package com.sinosoft.brokerchannel.server;

import com.sinosoft.brokerchannel.base.server.LogService;
import com.sinosoft.brokerchannel.entity.vo.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.text.DateFormat;
import java.text.SimpleDateFormat;

/**
 * @需求名称:投保
 * @类描述:投保流程的service
 */
@Service
public class ProposalGenerateService {
    private final DateFormat dft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    private final Logger logger = LoggerFactory.getLogger(this.getClass());
    @Autowired
    private LogService logService;
    @Autowired
    private CarQuotePriceService carQuotePriceService;
    @Autowired
    private SystemConfigService systemConfigService;

    private String getInsureDate(String insureDate) throws Exception {
        return dft.format(new SimpleDateFormat("yyyyMMddHHmmss").parse(insureDate));
    }

    /**
     * @param request({@link ProposalGenerateRequest})
     * @return ({ @ link ProposalGenerateResponse })
     * @throws Exception
     * @需求名称：投保
     * @描述:投保流程核心方法
     */
    public ProposalGenerateResponse proposalGenerate(ProposalGenerateRequest request) throws Exception {
        //**********勾艳奇--ilog*************************************************/
        String ilogSaleNo = request.getRequestBody().getIlogSaleNo();
        //**********勾艳奇--ilog*************************************************/
        // add by lizhenmin reason:禁止一次核保未结束时再进行下次核保  date：2017-12-15 begin
        if (request != null ) {
            ProposalGenerateResponse response = new ProposalGenerateResponse();
            ProposalGenerateResponseMain responseBody = new ProposalGenerateResponseMain();
            response.setResponseBody(responseBody);
            if (request.getRequestBody().getPackageJQVO() != null) {
                PackageJQVO packageJQ = new PackageJQVO();
                responseBody.setPackageJQVO(packageJQ);
                packageJQ.setFlag("0");
                packageJQ.setcAppNo(request.getRequestBody().getPackageJQVO().getcAppNo());
                packageJQ.setCerrRes("请稍等，系统正在努力核保中……");
            }
            if (request.getRequestBody().getPackageSYVO() != null) {
                PackageSYVO packageSY = new PackageSYVO();
                responseBody.setPackageSYVO(packageSY);
                packageSY.setFlag("0");
                packageSY.setcAppNo(request.getRequestBody().getPackageSYVO().getcAppNo());
                packageSY.setCerrRes("请稍等，系统正在努力核保中……");
            }
            return response;
        }
        // add by lizhenmin reason:禁止一次核保未结束时再进行下次核保  date：2017-12-15 end
        // 返回数据
        ProposalGenerateResponse response = new ProposalGenerateResponse();
        ProposalGenerateResponseMain responseBody = new ProposalGenerateResponseMain();
        response.setResponseBody(responseBody);
        //直接返回数据
        return response;}
//        try {
//            //add by yangwentao SCM-177  滴滴出单回写web_app_base表中c_ply_no单号为空    2017-11-29 begin
//            //判断是否已生成保单
//            if (this.generatingPolicy(request)) {
//                if (request.getRequestBody().getPackageJQVO() != null) {
//                    PackageJQVO packageJQ = new PackageJQVO();
//                    responseBody.setPackageJQVO(packageJQ);
//                    packageJQ.setFlag("0");
//                    packageJQ.setcAppNo(request.getRequestBody().getPackageJQVO().getcAppNo());
//                    packageJQ.setCerrRes("此单已生成保单,请勿重复投保！");
//                }
//                if (request.getRequestBody().getPackageSYVO() != null) {
//                    PackageSYVO packageSY = new PackageSYVO();
//                    responseBody.setPackageSYVO(packageSY);
//                    packageSY.setFlag("0");
//                    packageSY.setcAppNo(request.getRequestBody().getPackageSYVO().getcAppNo());
//                    packageSY.setCerrRes("此单已生成保单,请勿重复投保！");
//                }
//                return response;
//            }
//            //add by yangwentao SCM-177  滴滴出单回写web_app_base表中c_ply_no单号为空    2017-11-29  end
//
//            //add by lizhenmin reason:ilog规则调整开关  date：2017-12-23 begin
////            if (!("1".equals(systemConfigService.getProperty("ilogSwitch")) || (!BaseUtile.strIsNullorEmpty(ilogSaleNo)
////                    && businessJobNoConifgService.getIlogNoSet().contains(ilogSaleNo)))) {
////                // 车险投保政策调整（反欺诈风险）
////                this.saveGZ(request);
////            }
//            //add by lizhenmin reason:ilog规则调整开关  date：2017-12-23 end
//
//            // 请求数据校验&&默认值处理 --add by 邢广平 2017-03-19
//            //this.requestCheckAndEnhance(request);
//            // 提交核保时，二次进行算费。调整投保查询比、北京地区保费试算投保人和被保险人信息不一致问题
//           // String quotePriceAgainChannelCode = systemConfigService.getProperty("quotePriceAgainChannelCode");
//           // String channelCode = request.getRequestBody().getChannel().getChannelCode();// 渠道代码
//            //if ((channelCode != null) && (quotePriceAgainChannelCode.contains(channelCode) || this.ifInsuredNmeDiffer(request))) {
//              //  this.quotePriceAgain(request);
//
//          //  }
//            // 收集投保数据
//            PolicyApplicationApi policyApplicationApi;
//            //policyApplicationApi = this.policyApplicationCollect(request);
//
//            //add by zhaoqi reason:RM-3232车险渠道的支付流程改造  评审人:李振民  评审时间:2018-02-11  date：2017-12-10	 begin
//            //B2B中商业险和交强险dataSrcForB2B字段为1或者2时开启预下单流程
//           // String switchB2B = systemConfigService.getProperty("OrderPrePay_B2B");
//            boolean switchB2BJq = false;
//            boolean switchB2BSy = false;
////            if ("B2B".equals(request.getRequestBody().getChannel().getChannelCode())) {
////                if (switchB2B != null && !"".equals(switchB2B) && request.getRequestBody().getPackageJQVO() != null) {
////                    String dataSrcForB2B = request.getRequestBody().getPackageJQVO().getDataSrcForB2B();
////                    if (dataSrcForB2B != null && !"".equals(dataSrcForB2B) && switchB2B.contains(dataSrcForB2B)) {
////                        switchB2BJq = true;
////                    }
////                }
////                if (switchB2B != null && !"".equals(switchB2B) && request.getRequestBody().getPackageSYVO() != null) {
////                    String dataSrcForB2B = request.getRequestBody().getPackageSYVO().getDataSrcForB2B();
////                    if (dataSrcForB2B != null && !"".equals(dataSrcForB2B) && switchB2B.contains(dataSrcForB2B)) {
////                        switchB2BSy = true;
////                    }
////                }
////
////            }
//
//
////            if (systemConfigService.getProperty("OrderPrePay").contains(channelCode) || (switchB2BJq || switchB2BSy)) {
////                String orderNo = orderPrePayService.OrderPrePay(request);
////                responseBody.setOrderNo(orderNo);
////            }
//
//            //add by zhaoqi reason:RM-3232车险渠道的支付流程改造   评审人:李振民  评审时间:2018-02-11  date：2017-12-10	 end
//            //调用安心申请核保DUBBO服务
//            long firstTime = System.currentTimeMillis();
//            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台   评审人:李振民  评审日期:2018-01-03 date：2017-12-28 end
//           // policyApplicationApi = iUnderWriterApi.underPolicy_vhl(policyApplicationApi);
//            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03 date：2017-12-28 begin
//            Map<Object, Object> map = request.getRequestBody().getMap();
//            CommonUtil.timeLog(firstTime, "underwritingUseTime", map);
//            logger.info(System.getProperty("line.separator") + "----------------------------------------申请核保返回数据----------------------------------------" + CommonUtil.printUUID("", map) + System.getProperty("line.separator") + CommonUtil.dto2xml(policyApplicationApi) + System.getProperty("line.separator") + "----------------------------------------申请核保返回数据----------------------------------------" + System.getProperty("line.separator"));
//            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03 date：2017-12-28 end
//            long endTime = System.currentTimeMillis();
//            logger.info("zonghaoshi----iUnderWriterApi-----" + (firstTime - endTime));
//            //组织返回数据
//            this.proposalGenerateResponse(request, responseBody, policyApplicationApi);
//        } catch (BusinessException e) {
//            logger.info("业务异常：", e);
//            throw e;
//        } catch (Exception e) {
//            logger.info("运行异常：", e);
//            throw e;
//        } finally {// add by lizhenmin reason:禁止一次核保未结束时再进行下次核保  date：2017-12-15 begin
//            if (request != null && request.getRequestBody() != null && request.getRequestBody().getPackageJQVO() != null) {
//                JedisUtil.releaseDistributedLock("jq" + request.getRequestBody().getChannel().getChannelCode() + request.getRequestBody().getPackageJQVO().getcAppNo(), SystemParamFinal.getHostName());
//            }
//            if (request != null && request.getRequestBody() != null && request.getRequestBody().getPackageSYVO() != null) {
//                JedisUtil.releaseDistributedLock("sy" + request.getRequestBody().getChannel().getChannelCode() + request.getRequestBody().getPackageSYVO().getcAppNo(), SystemParamFinal.getHostName());
//            }
//        }
//        // add by lizhenmin reason:禁止一次核保未结束时再进行下次核保  date：2017-12-15 end
//
//        return response;
//
//    }
//
//    //add by yangwentao SCM-177  滴滴出单回写web_app_base表中c_ply_no单号为空    2017-11-29 begin
//    private Boolean generatingPolicy(ProposalGenerateRequest request) throws BusinessException {
//
//        Boolean SYFlag = false;
//        Boolean JQFlag = false;
//        if (request.getRequestBody() != null) {
//            PackageSYVO packageSYVO = request.getRequestBody().getPackageSYVO();
//            if (packageSYVO != null) {
//                String appno = packageSYVO.getcAppNo();
//                //AppMain selectByAppNo = appMainService.selectByAppNo(appno);
//               // if (selectByAppNo.getPlyno() != null && !"".equals(selectByAppNo.getPlyno())) {
//                    SYFlag = true;
//               // }
//            }
//            PackageJQVO packageJQVO = request.getRequestBody().getPackageJQVO();
//            if (packageJQVO != null) {
//                String appno = packageJQVO.getcAppNo();
//               // AppMain selectByAppNo = appMainService.selectByAppNo(appno);
//                //if (selectByAppNo.getPlyno() != null && !"".equals(selectByAppNo.getPlyno())) {
//                    JQFlag = true;
//               // }
//            }
//        }
//        if (SYFlag || JQFlag) {
//            return true;
//        }
//        return false;
//    }
//
//    /**
//     * 判断投保人姓名是否一致
//     *
//     * @param request {@link ProposalGenerateRequest}
//     * @return boolean
//     * @throws BusinessException
//     */
//    private boolean ifInsuredNmeDiffer(ProposalGenerateRequest request) {
//        try {
//            AppMain appMain = null;// 投保流程信息
//            String provinceCode = "";// 保单归属地省
//            String insuredNmeNew = request.getRequestBody().getInsuredVO().getcInsuredNme();
//            String insuredNmeOld = "";
//            PackageJQVO packageJQVO = request.getRequestBody().getPackageJQVO();
//            PackageSYVO packageSYVO = request.getRequestBody().getPackageSYVO();
//            // 判断交强险被保险人姓名与保费试算是否一致
//            if (packageJQVO != null && packageJQVO.getAppMain() != null) {// 投保交强险
//                appMain = packageJQVO.getAppMain();
//                insuredNmeOld = appMain.getExtend1();// 被保险人姓名
//                provinceCode = appMain.getExtend3();//
//                if (("11".contains(provinceCode.substring(0, 2))) && (insuredNmeOld != null) && (!"".equals(insuredNmeOld)) && (!insuredNmeNew.equals(insuredNmeOld))) {
//                    return true;
//                }
//            }
//            // 判断商业险被保险人姓名与保费试算是否一致
//            if (packageSYVO != null && packageSYVO.getAppMain() != null) {// 投保交强险
//                appMain = packageSYVO.getAppMain();
//                insuredNmeOld = appMain.getExtend1();// 车主姓名
//                provinceCode = appMain.getExtend3();
//                if (("11".contains(provinceCode.substring(0, 2))) && (insuredNmeOld != null) && (!"".equals(insuredNmeOld)) && (!insuredNmeNew.equals(insuredNmeOld))) {
//                    return true;
//                }
//            }
//        } catch (Exception e) {
//            logger.info("运行异常：", e);
//        }
//        return false;
//    }
//
//    /**
//     * 请求数据校验和增强
//     *
//     * @param request {@link ProposalGenerateRequest}
//     * @throws BusinessException
//     */
//    private void requestCheckAndEnhance(ProposalGenerateRequest request) throws Exception {
//        if (request != null && request.getRequestBody() != null) {
//            AppMain appMain = null;//流程信息
//            //获取请求参数
//            ProposalGenerateRequestMain requestBody = request.getRequestBody();//请求主信息
//            ApplicantVO applicantVO = requestBody.getApplicantVO();//投保人信息
//            InsuredVO insuredVO = requestBody.getInsuredVO();//被保人信息
//            VhlownerVO vhlownerVO = requestBody.getVhlownerVO();//车主信息
//            PackageJQVO packageJQ = requestBody.getPackageJQVO();//交强险信息
//            PackageSYVO packageSY = requestBody.getPackageSYVO();//商业险信息
//            String channelCode = request.getRequestBody().getChannel().getChannelCode();//渠道编码
//            //add by lizhenmin reasean:小米单独配置  date：2017-08-17 begin
//            String province1 = "";
//            String province2 = "";
//            //小米默认保单类型与发票类型
////            if (packageJQ != null && (SystemParamFinal.CHANNEL_CODE_AEC16110055).equals(channelCode)) {
////                appMain = appMainService.effectiveDataCheck(packageJQ.getcAppNo(), "1");
////                province1 = appMain.getExtend3();// 保单归属地省
////                if ("110000".equals(province1)) {
////                    packageJQ.setcPlyTyp("1");
////                    packageJQ.setcInvType("026");
////                } else if (!"110000".equals(province1)) {
////                    packageJQ.setcPlyTyp("0");
////                    packageJQ.setcInvType("007");
////                }
////            }
//            //小米默认保单类型与发票类型
////            if (packageSY != null && (SystemParamFinal.CHANNEL_CODE_AEC16110055).equals(channelCode)) {
////                appMain = appMainService.effectiveDataCheck(packageSY.getcAppNo(), "1");
////                province2 = appMain.getExtend3();
////                ;// 保单归属地省
////                if ("110000".equals(province2)) {
////                    packageSY.setcPlyTyp("1");
////                    packageSY.setcInvType("026");
////                } else if (!"110000".equals(province2)) {
////                    packageSY.setcPlyTyp("0");
////                    packageSY.setcInvType("007");
////                }
////            }
//            //add by lizhenmin reasean:小米单独配置  date：2017-08-17 end
//            VhlVO vhlVO = null;//车辆信息
//            if (applicantVO == null) {
//                throw new BusinessException("0019", "投保人信息不能为空!");
//            }
//            if (insuredVO == null) {
//                throw new BusinessException("0019", "被保险人信息不能为空!");
//            }
//            if (vhlownerVO == null) {
//                throw new BusinessException("0019", "车主信息不能为空!");
//            }
//            // 北京地区调用被保人投保人数据增强方法
//            String provinceCode1 = "";
//            String provinceCode2 = "";
//            if (packageJQ != null) {
//                //appMain = appMainService.effectiveDataCheck(packageJQ.getcAppNo(), "1");
//                //provinceCode1 = appMain.getExtend3();
//                // 保单归属地省
//                packageJQ.setcProdNo("030001");// 产品代码
//               // packageJQ.setcQryCde(appMain.getQrycde());// 投保查询吗
//                vhlVO = packageJQ.getVhlVO();
//                if (vhlVO == null) {
//                    vhlVO = new VhlVO();
//                }
//
//                vhlVO.setcAppNo(packageJQ.getcAppNo());// 申请单号
//                vhlVO.setcQryCde(appMain.getQrycde());// 投保查询吗
//                //packageJQ.setAppMain(appMain);// 暂存流程信息
//            }
//            if (packageSY != null) {
//                appMain = appMainService.effectiveDataCheck(packageSY.getcAppNo(), "1");
//                provinceCode2 = appMain.getExtend3();
//                ;// 保单归属地省
//                packageSY.setcProdNo("033011");// 产品代码
//                packageSY.setcQryCde(appMain.getQrycde());// 投保查询吗
//                vhlVO = packageSY.getVhlVO();
//                if (vhlVO == null) {
//                    vhlVO = new VhlVO();
//                }
//
//                vhlVO.setcAppNo(packageSY.getcAppNo());// 申请单号
//                vhlVO.setcQryCde(appMain.getQrycde());// 投保查询吗
//                packageSY.setAppMain(appMain);// 暂存流程信息
//            }
//
//            // 开关控制渠道
//            //String proposalGenerateChannelCode = systemConfigService.getProperty("proposalGenerateChannelCode");
//
////            if (proposalGenerateChannelCode.contains(channelCode)) {
////                if (provinceCode1.equals("110000") || provinceCode2.equals("110000")) {
////                    dataEnhance(request);
////                }
////            }
//
//            // 投保人信息默认值处理
//
//            String insureDefault = systemConfigService.getProperty("defaultChannelCode");
//            if (insureDefault.contains(channelCode)) {
//                // 投保人信息默认值处理
//                if (applicantVO.getcZipCde() == null || "".equals(applicantVO.getcZipCde())) {
//                    applicantVO.setcZipCde("100000");// 邮编
//                }
//                // 被保险人信息默认值处理
//                if (insuredVO.getcZipCde() == null || "".equals(insuredVO.getcZipCde())) {
//                    insuredVO.setcZipCde("100000");// 邮编
//                }
//
//                // 车主信息默认值处理
//                if (vhlownerVO.getcZipCde() == null || "".equals(vhlownerVO.getcZipCde())) {
//                    vhlownerVO.setcZipCde("100000");// 车主邮政编码
//                }
//
//            }
//            if (applicantVO.getcWorkDpt() == null || "".equals(applicantVO.getcWorkDpt())) {// 工作单位,单位性质
//                applicantVO.setcWorkDpt("6");// 企业
//            }
//            if (applicantVO.getcCustRiskRank() == null || "".equals(applicantVO.getcCustRiskRank())) {//反洗钱客户等级
//                applicantVO.setcCustRiskRank(SystemParamFinal.ANTI_RISK_RANK_925105);//普通
//            }
//            if (applicantVO.getcAppCate() == null || "".equals(applicantVO.getcAppCate())) {//投保人类型
//                if (vhlownerVO.getcOwnerNme() != null && applicantVO.getcAppNme() != null && vhlownerVO.getcOwnerNme().equals(applicantVO.getcAppNme())) {
//                    applicantVO.setcAppCate(SystemParamFinal.APPLICANT_TYPE_1);//车辆所有人
//                } else if (applicantVO.getcAppNme() != null && insuredVO.getcInsuredNme() != null && insuredVO.getcInsuredNme().equals(applicantVO.getcAppNme())) {
//                    applicantVO.setcAppCate("2");// 车辆管理人
//                } else {
//                    applicantVO.setcAppCate("9");// 其它
//                }
//            }
//            if (applicantVO.getcCertfCls() != null && (applicantVO.getcCertfCls().equals(SystemParamFinal.CERTFICATE_120001) || applicantVO.getcCertfCls().equals(SystemParamFinal.CERTFICATE_120002) || applicantVO.getcCertfCls().equals(SystemParamFinal.CERTFICATE_120003) || applicantVO.getcCertfCls().equals("120012"))) {//投保人自然人非自然人校验
//                applicantVO.setcClntMrk("1");//自然人
//            } else {
//                applicantVO.setcClntMrk("0");//非自然人
//            }
//            //投保人邮箱
//            if (BaseUtile.strIsNullorEmpty(applicantVO.getcZipCde())) {
//                applicantVO.setcZipCde(SystemParamFinal.ZIPCDE_BJ);
//            }
//            //投保人地址
//            if (BaseUtile.strIsNullorEmpty(applicantVO.getcWorkArea())) {
//                applicantVO.setcWorkArea(SystemParamFinal.DEFAULT_ADDRESS);
//            }
//            //被保险人信息默认值处理
//            if (insuredVO.getcWorkDpt() == null || "".equals(insuredVO.getcWorkDpt())) {//工作单位,单位性质
//                insuredVO.setcWorkDpt(SystemParamFinal.WORK_TYPE_6);//企业
//            }
//            if (insuredVO.getcCustRiskRank() == null || "".equals(insuredVO.getcCustRiskRank())) {//反洗钱客户等级
//                insuredVO.setcCustRiskRank(SystemParamFinal.ANTI_RISK_RANK_925105);//普通
//            }
//            if (insuredVO.getcResvTxt20() == null || "".equals(insuredVO.getcResvTxt20())) {//被保人类型
//                if (vhlownerVO.getcOwnerNme() != null && insuredVO.getcInsuredNme() != null && vhlownerVO.getcOwnerNme().equals(insuredVO.getcInsuredNme())) {
//                    insuredVO.setcResvTxt20(SystemParamFinal.INSURED_TYPE_1);//车辆所有人
//                } else {
//                    insuredVO.setcResvTxt20(SystemParamFinal.INSURED_TYPE_2);//车辆管理人
//                }
//            }
//            if (insuredVO.getcCertfCls() != null && (insuredVO.getcCertfCls().equals(SystemParamFinal.CERTFICATE_120001) || insuredVO.getcCertfCls().equals(SystemParamFinal.CERTFICATE_120002) || insuredVO.getcCertfCls().equals(SystemParamFinal.CERTFICATE_120003) || insuredVO.getcCertfCls().equals("120012"))) {//投保人自然人非自然人校验
//                insuredVO.setcClntMrk("1");//自然人
//            } else {
//                insuredVO.setcClntMrk("0");//非自然人
//            }
//            //被保险人邮箱
//            if (BaseUtile.strIsNullorEmpty(insuredVO.getcZipCde())) {
//                insuredVO.setcZipCde(SystemParamFinal.ZIPCDE_BJ);
//            }
//            //被保险人地址
//            if (BaseUtile.strIsNullorEmpty(insuredVO.getcResidAddr())) {
//                insuredVO.setcResidAddr(SystemParamFinal.DEFAULT_ADDRESS);
//            }
//            //车主信息默认值处理
//            if (vhlownerVO.getcOwnerCls() == null || "".equals(vhlownerVO.getcOwnerCls())) {//车主类型
//                if (vhlownerVO.getcCertfCls() != null && ((SystemParamFinal.CERTFICATE_120001).equals(vhlownerVO.getcCertfCls())//居民身份证
//                        || (SystemParamFinal.CERTFICATE_120002).equals(vhlownerVO.getcCertfCls())//护照
//                        || (SystemParamFinal.CERTFICATE_120003).equals(vhlownerVO.getcCertfCls())//军人证
//                        || (SystemParamFinal.CERTFICATE_120012).equals(vhlownerVO.getcCertfCls())//外国人证件
//                )) {//车主类型
//                    vhlownerVO.setcOwnerCls("1");//自然人
//                } else {
//                    vhlownerVO.setcOwnerCls("0");// 非自然人
//
//                }
//            }
//            //车主邮编
//            if (BaseUtile.strIsNullorEmpty(vhlownerVO.getcZipCde())) {
//                vhlownerVO.setcZipCde(SystemParamFinal.ZIPCDE_BJ);
//            }
//            //车主地址
//            if (BaseUtile.strIsNullorEmpty(vhlownerVO.getcResidAddr())) {
//                vhlownerVO.setcResidAddr(SystemParamFinal.DEFAULT_ADDRESS);
//            }
//
//        } else {
//            throw new BusinessException("0019", "投保流程请求数据不能为空!");
//        }
//
//    }
//
//    /**
//     * 被保人，投保人信息增强
//     */
//    private void dataEnhance(ProposalGenerateRequest request) throws Exception {
//        // 获取请求参数
//        ProposalGenerateRequestMain requestBody = request.getRequestBody();// 请求主信息
//        ApplicantVO applicantVO = requestBody.getApplicantVO();// 投保人信息
//        InsuredVO insuredVO = requestBody.getInsuredVO();// 被保人信息
//
//        if (insuredVO.getcCertfCde() != null && insuredVO.getcInsuredNme() != null) {
//            // 被保人信息增强
//            // 从表中查数据送给核心
//
//            AppInsureKey AppInsureKey = new AppInsureKey();
//            AppInsureKey.setCcertfcde(insuredVO.getcCertfCde());
//            AppInsureKey.setCinsurednme(insuredVO.getcInsuredNme());
//            AppInsure appInsure = appInsureMapper.selectByPrimaryKey(AppInsureKey);
//            if (appInsure != null) {
//                insuredVO.setcSex(appInsure.getCsex());
//                insuredVO.setcNation(appInsure.getCnation());
//                insuredVO.settBirthday(appInsure.getTbirthday());
//                insuredVO.setcClntAddr(appInsure.getCclntaddr());
//                insuredVO.setcGivenDpt(appInsure.getCgivendpt());
//                insuredVO.settCertfBgnDate(appInsure.getTidbgndate());
//                insuredVO.settCertfEndDate(appInsure.getTidenddate());
//                insuredVO.setcMobile(appInsure.getCmobile());
//                insuredVO.setcIdCollectionMachine(appInsure.getCidcollectionmachine());
//                insuredVO.setcCertfCls(appInsure.getCcertfcls());
//                insuredVO.setcAddress(appInsure.getCaddress());
//
//            }
//        }
//        if (applicantVO.getcCertfCde() != null && applicantVO.getcAppNme() != null) {
//
//            // 从表中查数据送给核心
//            // 投保人信息增强
//            AppApplicantKey appApplicantKey = new AppApplicantKey();
//            appApplicantKey.setCappnme(applicantVO.getcAppNme());
//            appApplicantKey.setCcertfcde(applicantVO.getcCertfCde());
//            AppApplicant appApplicant = appApplicantMapper.selectByPrimaryKey(appApplicantKey);
//            if (appApplicant != null) {
//                applicantVO.setcSex(appApplicant.getCsex());
//                applicantVO.setcNation(appApplicant.getCnation());
//                applicantVO.settBirthday(appApplicant.getTbirthday());
//                applicantVO.setcClntAddr(appApplicant.getCclntaddr());
//                applicantVO.setcGivenDpt(appApplicant.getCgivendpt());
//                applicantVO.settCertfBgnDate(appApplicant.getTidenddate());
//                applicantVO.settCertfEndDate(appApplicant.getTidbgndate());
//                applicantVO.setcMobile(appApplicant.getCmobile());
//                applicantVO.setcIdCollectionMachine(appApplicant.getCidcollectionmachine());
//                applicantVO.setcCertfCls(appApplicant.getCcertfcls());
//                applicantVO.setcAddress(appApplicant.getCaddress());
//
//            }
//        } else {
//            throw new BusinessException("0019", "投保流程请求数据不能为空!");
//        }
//    }
//
//    /**
//     * 重新算费
//     *
//     * @param request {@link ProposalGenerateRequest}
//     * @throws BusinessException
//     */
//    private CarQuotePriceResponse quotePriceAgain(ProposalGenerateRequest request) throws Exception {
//
//        String ilogSaleNo = request.getRequestBody().getIlogSaleNo();
//        boolean ilogFlag = "1".equals(systemConfigService.getProperty("ilogSwitch")) || (!BaseUtile.strIsNullorEmpty(ilogSaleNo)
//                && businessJobNoConifgService.getIlogNoSet().contains(ilogSaleNo));
//        //保单信息
//        PackageSYVO packageSYVO = null;//商业险信息
//        PackageJQVO packageJQVO = null;//交强险信息
//        BaseVO baseVO = null;//基本信息
//        ApplicantVO applicantVO = null;//投保人信息
//        InsuredVO insuredVO = null;//被保险人信息
//        VhlownerVO vhlownerVO = null;//
//        VhlVO vhlVO = null;//车辆信息
//        List<CvrgVO> cvrgList = null;//险别信息
//        PrmCoefVO prmCoefVO = null;//系数信息
//        Channel channel = null;//渠道信息
//        VsTaxVO vsTaxVO = null;//车船税信息
//        //保费试算信息
//        CarQuotePriceRequest carQuotePriceRequest = null;
//        CarQuotePriceRequestMain carQuotePriceRequestMain = null;
//        CarQuotePriceResponse carQuotePriceResponse = null;
//        //保单详情信息
//        CarBusinessDetailInfoQueryResponse carBusinessDetailInfoQueryResponse = null;
//        AppMain appMainJQ = null;//交强险主表信息
//        AppMain appMainSY = null;//商业险主表信息
//        String provinceCode = "";//省份代码
//        String appNoJQ = "";//交强险申请单号
//        String appNoSY = "";//商业险申请单号
//        boolean ifInsureJQ = false;//是否投保交强险
//        boolean ifInsureSY = false;//是否投保商业险
//        String tInsrncBgnTm = "";//起保日期
//        String tInsrncEndTm = "";//终保日期
//        String channelCode = "";
//        try {
//            try {
//                //获取请求信息
//                applicantVO = request.getRequestBody().getApplicantVO();//投保人信息
//                insuredVO = request.getRequestBody().getInsuredVO();//被保险人信息
//                vhlownerVO = request.getRequestBody().getVhlownerVO();//车主信息
//                channel = request.getRequestBody().getChannel();//渠道信息
//                channelCode = channel.getChannelCode();//渠道代码
//                packageSYVO = request.getRequestBody().getPackageSYVO();//商业险信息
//                packageJQVO = request.getRequestBody().getPackageJQVO();//交强险信息
//                //查询交强险信息
//                if (packageJQVO != null && packageJQVO.getcAppNo() != null && !"".equals(packageJQVO.getcAppNo())) {
//                    ifInsureJQ = true;
//                    appNoJQ = packageJQVO.getcAppNo();
//                    appMainJQ = packageJQVO.getAppMain();
//                    provinceCode = appMainJQ.getExtend3();
//                }
//                //查询商业险信息
//                if (packageSYVO != null && packageSYVO.getcAppNo() != null && !"".equals(packageSYVO.getcAppNo())) {
//                    ifInsureSY = true;
//                    appNoSY = packageSYVO.getcAppNo();
//                    appMainSY = packageSYVO.getAppMain();
//                    provinceCode = appMainSY.getExtend3();
//                }
//                //组织保费试算入参
//                carQuotePriceRequest = new CarQuotePriceRequest();
//                carQuotePriceRequestMain = new CarQuotePriceRequestMain();
//                carQuotePriceRequest.setRequestBody(carQuotePriceRequestMain);
//                //基本信息
//                carQuotePriceRequestMain.setBaseVO(baseVO);
//                //投保人信息
//                carQuotePriceRequestMain.setApplicantVO(applicantVO);
//                //被保人信息
//                carQuotePriceRequestMain.setInsuredVO(insuredVO);
//                //车主信息
//                carQuotePriceRequestMain.setVhlownerVO(vhlownerVO);
//                //渠道信息
//                carQuotePriceRequestMain.setChannel(channel);
//                //add by guojianxin 北京地区，个人身份信息采集调整  2017-09-20 begin
//                if ("110000".equals(provinceCode)) {
//                    if ("120001".equals(applicantVO.getcCertfCls()) || "120002".equals(applicantVO.getcCertfCls()) || "120003".equals(applicantVO.getcCertfCls()) || "120012".equals(applicantVO.getcCertfCls())) {
//                        carQuotePriceRequestMain.setFlag("1");
//                    }
//                }
//                //add by guojainxin 北京地区，个人身份信息采集调整  2017-09-20 end
//                // 商业险信息
//                if (ifInsureSY) {
//                    packageSYVO = new PackageSYVO();
//                    // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03 date：2017-12-28 begin
//                    long firstTime = System.currentTimeMillis();
//                    // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台 评审人:李振民  评审日期:2018-01-03 date：2017-12-28 end
//                    carBusinessDetailInfoQueryResponse = this.appDetailInfoQuery(appNoSY);
//                    // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//                    Map<Object, Object> map = request.getRequestBody().getMap();
//                    CommonUtil.timeLog(firstTime, "syBusinessDetailInfoQueryUseTime", map);
//                    // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台   评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//                    baseVO = carBusinessDetailInfoQueryResponse.getResponseBody().getBaseVO();//基本信息
//                    baseVO.setCprovince(provinceCode);//保单归宿地省
//                    baseVO.setcProvince(provinceCode);//保单归宿地省
//                    vhlVO = carBusinessDetailInfoQueryResponse.getResponseBody().getVhlVO();//车辆信息
//                    cvrgList = carBusinessDetailInfoQueryResponse.getResponseBody().getCvrgList();//险别信息
//                    prmCoefVO = carBusinessDetailInfoQueryResponse.getResponseBody().getPrmCoefVO();//系数信息
//                    tInsrncBgnTm = getInsureDate(baseVO.gettInsrncBgnTm());//起保日期
//                    tInsrncEndTm = getInsureDate(baseVO.gettInsrncEndTm());//终保日期
//                    vhlVO.setcQryCde(carBusinessDetailInfoQueryResponse.getResponseBody().getVhlVO().getcQryCde());// 情况投保查询码
//
//                    packageSYVO.setcAppNo(appNoSY);// 申请单号
//                    packageSYVO.setcProdNo(SystemParamFinal.INSURANCE_PRODUCT_033011);// 产品代码
//                    packageSYVO.settInsrncBgnTm(tInsrncBgnTm);// 起保日期
//                    packageSYVO.settInsrncEndTm(tInsrncEndTm);// 终保日期
//                    packageSYVO.setVhlVO(vhlVO);// 车辆信息
//                    ArrayOfCvrgVO arrayOfCvrgVO = new ArrayOfCvrgVO();
//                    packageSYVO.setArrayOfCvrgVO(arrayOfCvrgVO);
//                    arrayOfCvrgVO.setCvrgList(cvrgList);// 险别信息
//                    packageSYVO.setPrmCoefVO(prmCoefVO);// 系数信息
//                    packageSYVO.setnPrm(carBusinessDetailInfoQueryResponse.getResponseBody().getBaseVO().getnPrm());//商业险应缴保费
//                    carQuotePriceRequestMain.setPackageSYVO(packageSYVO);
//                    if (baseVO.getcDptCde() != null && !("".equals(baseVO.getcDptCde()))) {
//                        if (baseVO.getcDptCde().contains("_")) {
//                            baseVO.setcDptCde(baseVO.getcDptCde().split("_")[1]);
//                        }
//                    } else {
//                        baseVO.setcDptCde("02000001");
//                    }
//                    carQuotePriceRequestMain.setBaseVO(baseVO);// 基本信息
//
//                }
//                //交强险信息
//                if (ifInsureJQ) {
//                    packageJQVO = new PackageJQVO();
//                    // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03 date：2017-12-28 begin
//                    long firstTime = System.currentTimeMillis();
//                    // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台    评审人:李振民  评审日期:2018-01-03 date：2017-12-28 end
//                    carBusinessDetailInfoQueryResponse = this.appDetailInfoQuery(appNoJQ);
//
//                    // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台   评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//                    Map<Object, Object> map = request.getRequestBody().getMap();
//                    CommonUtil.timeLog(firstTime, "jqBusinessDetailInfoQueryUseTime", map);
//                    // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台   评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//                    baseVO = carBusinessDetailInfoQueryResponse.getResponseBody().getBaseVO();//基本信息
//                    vhlVO = carBusinessDetailInfoQueryResponse.getResponseBody().getVhlVO();//车辆信息
//                    cvrgList = carBusinessDetailInfoQueryResponse.getResponseBody().getCvrgList();//险别信息
//                    prmCoefVO = carBusinessDetailInfoQueryResponse.getResponseBody().getPrmCoefVO();//系数信息
//                    vsTaxVO = carBusinessDetailInfoQueryResponse.getResponseBody().getVsTaxVO();//车船税信息
//                    tInsrncBgnTm = getInsureDate(baseVO.gettInsrncBgnTm());//起保日期
//                    tInsrncEndTm = getInsureDate(baseVO.gettInsrncEndTm());//终保日期
//                    baseVO.setCprovince(provinceCode);//保单归宿地省
//                    vhlVO.setcQryCde(carBusinessDetailInfoQueryResponse.getResponseBody().getVhlVO().getcQryCde());// 情况投保查询码
//                    baseVO.setcProvince(provinceCode);//保单归宿地省
//
//                    packageJQVO.setcAppNo(appNoJQ);//申请单号
//                    packageJQVO.setcProdNo(SystemParamFinal.INSURANCE_PRODUCT_030001);//产品代码
//                    packageJQVO.settInsrncBgnTm(tInsrncBgnTm);//起保日期
//                    packageJQVO.settInsrncEndTm(tInsrncEndTm);//终保日期
//                    packageJQVO.setVhlVO(vhlVO);//车辆信息
//                    ArrayOfCvrgVO arrayOfCvrgVO = new ArrayOfCvrgVO();
//                    packageJQVO.setArrayOfCvrgVO(arrayOfCvrgVO);
//                    arrayOfCvrgVO.setCvrgList(cvrgList);//险别信息
//                    packageJQVO.setPrmCoefVO(prmCoefVO);//系数信息
//                    packageJQVO.setnPrm(carBusinessDetailInfoQueryResponse.getResponseBody().getBaseVO().getnPrm());//交强险应缴保费
//                    if ("B2B".equals(channelCode)) {//b2b系统增加车船税信息
//                        packageJQVO.setVsTaxVO(vsTaxVO);
//                    }
//                    carQuotePriceRequestMain.setPackageJQVO(packageJQVO);
//                    if (baseVO.getcDptCde() != null && !("".equals(baseVO.getcDptCde()))) {
//                        if (baseVO.getcDptCde().contains("_")) {
//                            baseVO.setcDptCde(baseVO.getcDptCde().split("_")[1]);
//                        }
//                    } else {
//                        baseVO.setcDptCde("02000001");
//                    }
//                    carQuotePriceRequestMain.setBaseVO(baseVO);// 基本信息
//                }
//                //调用保费试算服务
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//                long firstTime = System.currentTimeMillis();
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台   评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//
//                carQuotePriceResponse = carQuotePriceService.carQuotePrice(carQuotePriceRequest);
//
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台   评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//                Map<Object, Object> map = request.getRequestBody().getMap();
//                CommonUtil.timeLog(firstTime, "secondCarQuotePriceUseTime", map);
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台    评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//                logger.info(System.getProperty("line.separator") + "----------------------------------------二次保费试算返回数据----------------------------------------" + CommonUtil.printUUID("", request.getRequestBody().getMap()) + System.getProperty("line.separator") + CommonUtil.dto2xml(carQuotePriceResponse) + System.getProperty("line.separator") + "----------------------------------------二次保费试算返回数据----------------------------------------" + System.getProperty("line.separator"));
//                // add by duanguolong reason:转保业务ocr自动识别 date:2017-08-29 begin
//                // 返回错误信息 判断是否为转保业务 如果是 进行第二次算费
//                try {
//                    String CheckCodeCirculation = systemConfigService.getProperty("CheckCodeCirculation");//转包验证码开关
//                    if (CheckCodeCirculation.contains(channelCode) && carQuotePriceCheckCodeService.carQuotePriceCheckCode(carQuotePriceResponse, carQuotePriceRequest)) {
//                        //转保业务 第二次调用保费试算服务
//                        Map<String, String> allresultkey = carQuotePriceCheckCodeService.carQuotePriceCallCheckCode(carQuotePriceResponse, carQuotePriceRequest);
//                        int CheckCodeCirculationTime = Integer.valueOf(systemConfigService.getProperty("CheckCodeCirculationTime"));
//                        boolean flag = true;
//                        int count = 1;
//                        do {
//                            logger.info(System.getProperty("line.separator") + "----------------------------------------转保保费试算请求数据----------------------------------------" + System.getProperty("line.separator") + CommonUtil.dto2xml(carQuotePriceRequest) + System.getProperty("line.separator") + "----------------------------------------转保保费试算请求数据----------------------------------------" + System.getProperty("line.separator"));
//
//
//                            logger.info(System.getProperty("line.separator") + "----------------------------------------转保保费试算返回数据----------------------------------------" + System.getProperty("line.separator") + CommonUtil.dto2xml(carQuotePriceResponse) + System.getProperty("line.separator") + "----------------------------------------转保保费试算返回数据----------------------------------------" + System.getProperty("line.separator"));
//                            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台   评审人:李振民  评审日期:2018-01-03 date：2017-12-28 begin
//                            long priceTime = System.currentTimeMillis();
//                            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台    评审人:李振民  评审日期:2018-01-03 date：2017-12-28 end
//
//                            carQuotePriceResponse = carQuotePriceService.carQuotePrice(carQuotePriceRequest);
//
//                            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台    评审人:李振民  评审日期:2018-01-03 date：2017-12-28 begin
//                            Map<Object, Object> priceMap = request.getRequestBody().getMap();
//                            CommonUtil.timeLog(priceTime, "secondCarQuotePriceUseTime", map);
//                            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台    评审人:李振民  评审日期:2018-01-03 date：2017-12-28 end
//                            logger.info(System.getProperty("line.separator") + "----------------------------------------转保保费试算返回数据----------------------------------------" + CommonUtil.printUUID("", request.getRequestBody().getMap()) + System.getProperty("line.separator") + CommonUtil.dto2xml(carQuotePriceResponse) + System.getProperty("line.separator") + "----------------------------------------转保保费试算返回数据----------------------------------------" + System.getProperty("line.separator"));
//                            if (flag) {
//                                Map<String, Boolean> flagMap = carQuotePriceCheckCodeService.inFormAutomatic(carQuotePriceResponse, allresultkey);
//                                if (flagMap.get("JQRight") && flagMap.get("SYRight")) {
//                                    break;
//                                }
//                            }
//                            allresultkey.clear();
//                            flag = carQuotePriceCheckCodeService.callBackCheckCode(carQuotePriceRequest, carQuotePriceResponse);
//                            allresultkey = carQuotePriceCheckCodeService.callBackCheckCodeTwo(carQuotePriceRequest, carQuotePriceResponse);
//                            count++;
//                        } while (count <= CheckCodeCirculationTime);
//                        //被保险人不一致  进行二次算费
//                    }
//                    // add by duanguolong reason:转保业务ocr自动识别  date:2017-08-29 end
//                } catch (Exception e) {
//                    logger.info("转保验证码错误信息------------》》》 ", e);
//                    throw new BusinessException("0019", "转保验证码识别出错！");
//                }
//            } catch (BusinessException e) {
//                logger.info("运行异常：", e);
//                throw e;
//            } catch (Exception e) {
//                logger.info("运行异常：", e);
//                throw new BusinessException("0019", "二次算费异常，请重新算费或联系运维人员！");
//            }
//            //商业险保费校验
//            if (ifInsureSY) {
//                if (carQuotePriceResponse.getResponseBody() != null && carQuotePriceResponse.getResponseBody().getPackageSYVO() != null && carQuotePriceResponse.getResponseBody().getPackageSYVO().getFlag() != null && "1".equals(carQuotePriceResponse.getResponseBody().getPackageSYVO().getFlag())) {//成功
//                    if (!appMainSY.getPrm().equals(CommonUtil.str2double(carQuotePriceResponse.getResponseBody().getPackageSYVO().getnPrm()))) {
//                        throw new BusinessException("0019", "核保金额与报价金额不一致，请重新报价！");
//                    }
//                    if (!appMainSY.getBaseprm().equals(CommonUtil.str2double(carQuotePriceResponse.getResponseBody().getPackageSYVO().getnBasePrm()))) {
//                        throw new BusinessException("0019", "核保金额与报价金额不一致，请重新报价！");
//                    }
//                    //回写投保查询码
//                    request.getRequestBody().getPackageSYVO().setcQryCde(carQuotePriceResponse.getResponseBody().getPackageSYVO().getcQryCde());
//                } else {
//                    throw new BusinessException("0019", "投保流程服务进行二次算费返回:" + carQuotePriceResponse.getResponseBody().getPackageSYVO().getCerrRes());
//                }
//            }
//            //交强险保费校验
//            if (ifInsureJQ) {
//                if (carQuotePriceResponse.getResponseBody() != null && carQuotePriceResponse.getResponseBody().getPackageJQVO() != null && carQuotePriceResponse.getResponseBody().getPackageJQVO().getFlag() != null && "1".equals(carQuotePriceResponse.getResponseBody().getPackageJQVO().getFlag())) {//成功
//
//                    if (!appMainJQ.getPrm().equals(CommonUtil.str2double(carQuotePriceResponse.getResponseBody().getPackageJQVO().getnPrm()))) {
//                        throw new BusinessException("0019", "核保金额与报价金额不一致，请重新报价！");
//                    }
//                    if (!appMainJQ.getBaseprm().equals(CommonUtil.str2double(carQuotePriceResponse.getResponseBody().getPackageJQVO().getnBasePrm()))) {
//                        throw new BusinessException("0019", "核保金额与报价金额不一致，请重新报价！");
//                    }
//                    if (carQuotePriceResponse.getResponseBody().getPackageJQVO().getVsTaxVO() != null && !appMainJQ.getNaggtax().equals(CommonUtil.str2double(carQuotePriceResponse.getResponseBody().getPackageJQVO().getVsTaxVO().getnAggTax()))) {
//                        throw new BusinessException("0019", "核保金额与报价金额不一致，请重新报价！");
//                    }
//                    request.getRequestBody().getPackageJQVO().setcQryCde(carQuotePriceResponse.getResponseBody().getPackageJQVO().getcQryCde());
//                } else {
//                    throw new BusinessException("0019", "投保流程服务进行二次算费返回:" + carQuotePriceResponse.getResponseBody().getPackageJQVO().getCerrRes());
//                }
//            }
//        } catch (BusinessException e) {
//            logger.info("运行异常：", e);
//            throw e;
//        } catch (Exception e) {
//            logger.info("运行异常：", e);
//            throw new BusinessException("0019", "投保流程服务进行二次算费失败！");
//        }
//
//        return carQuotePriceResponse;
//    }
//
//    /**
//     * 获取暂存单相信信息
//     *
//     * @param appNo 申请单号
//     * @return {@link CarBusinessDetailInfoQueryResponse}
//     * @throws BusinessException
//     */
//    private CarBusinessDetailInfoQueryResponse appDetailInfoQuery(String appNo) throws BusinessException {
//        CarBusinessDetailInfoQueryResponse response = null;
//        try {
//            CarBusinessDetailInfoQueryRequest request = new CarBusinessDetailInfoQueryRequest();
//            CarBusinessDetailInfoQueryRequestMain requestBody = new CarBusinessDetailInfoQueryRequestMain();
//            request.setRequestBody(requestBody);
//            requestBody.setcAppNo(appNo);
//            requestBody.setcAppTyp("A");
//            response = carBusinessDetailInfoQueryService.carBusinessDetailInfoQuery(request);
//        } catch (BusinessException e) {
//            logger.info("运行异常：", e);
//            throw e;
//        } catch (Exception e) {
//            logger.info("运行异常：", e);
//            throw new BusinessException("0019", "查询暂存单信息失败");
//        }
//        return response;
//    }
//
//    /**
//     * 收集投保数据（请求对象）
//     *
//     * @param request {@link ProposalGenerateRequest}
//     * @return PolicyApplicationApi dubbo申请核保请求数据
//     * @throws BusinessException
//     */
//    private PolicyApplicationApi policyApplicationCollect(ProposalGenerateRequest request) throws BusinessException {
//        PolicyApplicationApi policyApplicationApi = new PolicyApplicationApi();
//        //获取请求参数
//        ApplicantVO applicantVO = request.getRequestBody().getApplicantVO();//投保人信息
//        InsuredVO insuredVO = request.getRequestBody().getInsuredVO();//被保人信息
//        VhlownerVO vhlownerVO = request.getRequestBody().getVhlownerVO();//车主信息
//        PackageJQVO packageJQ = request.getRequestBody().getPackageJQVO();//交强险信息
//        PackageSYVO packageSY = request.getRequestBody().getPackageSYVO();//商业险信息
//        DeliveryVO deliveryVO = request.getRequestBody().getDeliveryVO();//配送信息
//        VhlVO vhlVO = null;//车辆信息
//        try {
//            AppApplicantVO applicant = null;
//            AppInsuredVO insured = null;
//            AppVhlownerVO vhlowner1 = null;
//            com.isoftstone.pcis.policy.vo.DeliveryVO delivery1 = null;
//            com.isoftstone.pcis.policy.vo.PackageJQVO packageJQVO = null;
//            com.isoftstone.pcis.policy.vo.PackageSYVO packageSYVO = null;
//            List<com.isoftstone.pcis.policy.vo.DeliveryVO> DeliveryVOList = new ArrayList<>();//配送信息集合
//            List<AppVhlownerVO> vhlOwnerList1 = new ArrayList<>();//车主信息集合
//            //组织投保人信息
//            if (applicantVO != null) {
//                applicant = new AppApplicantVO();
//                // add by yangwentao reason:RM-3914关系人名称校验规则-禁止录入符号-车险渠道  审人:李振民  评审时间:2018.01.15  date：2018-01-12 begin
//                CommonUtil.checkSymbol(applicantVO.getcAppNme());
//                // add by yangwentao reason:RM-3914关系人名称校验规则-禁止录入符号-车险渠道  审人:李振民  评审时间:2018.01.15  date：2018-01-12 end
//                applicant.setCAppNme(applicantVO.getcAppNme());//投保人名称
//                applicant.setCCertfCls(applicantVO.getcCertfCls());//证件类型
//                applicant.setCCertfCde(applicantVO.getcCertfCde());//证件号码
//                applicant.setCClntAddr(applicantVO.getcClntAddr());//地址/住址
//                applicant.setCZipCde(applicantVO.getcZipCde());//邮编
//                applicant.setCMobile(applicantVO.getcMobile());//电话
//                applicant.setCWorkDpt(applicantVO.getcWorkDpt());//工作单位，工作性质
//                applicant.setCCustRiskRank(applicantVO.getcCustRiskRank());//反洗钱客户风险等级
//                applicant.setCAppCate(applicantVO.getcAppCate());//投保人类型
//                applicant.setCWorkArea(applicantVO.getcWorkArea());//住址
//                applicant.setCEmail(applicantVO.getcEmail());//电子邮箱
//                applicant.setCClntMrk(applicantVO.getcClntMrk());//是否自然人
//                //新增
//                applicant.setCSex(applicantVO.getcSex());//性别
//                applicant.setCNation(applicantVO.getcNation());//名族
//                applicant.setTBirthday(CommonUtil.str2date(applicantVO.gettBirthday()));//出生日期
//                applicant.setCAddress(applicantVO.getcAddress());//住址
//                applicant.setCGivenDpt(applicantVO.getcGivenDpt());//签发机构
//                applicant.setTCertfBgnDate(CommonUtil.str2date(applicantVO.gettIdBgnDate()));//身份证有效始期
//                applicant.setTCertfEndDate(CommonUtil.str2date(applicantVO.gettIdEndDate()));//身份证有效止期
//                applicant.setTCertfBgnDate(CommonUtil.str2date(applicantVO.gettIdBgnDate()));//身份证有效始期
//                applicant.setTCertfEndDate(CommonUtil.str2date(applicantVO.gettIdEndDate()));//身份证有效止期
//                applicant.setCIdCollectionMachine(applicantVO.getcIdCollectionMachine());//采集器编码
//            }
//            //被保险人信息
//            if (insuredVO != null) {
//                insured = new AppInsuredVO();
//                // add by yangwentao reason:RM-3914关系人名称校验规则-禁止录入符号-车险渠道  审人:李振民  评审时间:2018.01.15  date：2018-01-12 begin
//                CommonUtil.checkSymbol(insuredVO.getcInsuredNme());
//                // add by yangwentao reason:RM-3914关系人名称校验规则-禁止录入符号-车险渠道  审人:李振民  评审时间:2018.01.15  date：2018-01-12 end
//                insured.setCInsuredNme(insuredVO.getcInsuredNme());//被保人名称
//                insured.setCCertfCls(insuredVO.getcCertfCls());//证件类型
//                insured.setCCertfCde(insuredVO.getcCertfCde());//证件号码
//                insured.setCClntAddr(insuredVO.getcClntAddr());//地址/住址
//                insured.setCZipCde(insuredVO.getcZipCde());//邮编
//                insured.setCMobile(insuredVO.getcMobile());//电话
//                insured.setCWorkDpt(insuredVO.getcWorkDpt());//工作单位，工作性质
//                insured.setCCustRiskRank(insuredVO.getcCustRiskRank());//反洗钱客户风险等级
//                insured.setCResvTxt20(insuredVO.getcResvTxt20());//被保险人类型
//                insured.setCResidAddr(insuredVO.getcResidAddr());//住址
//                insured.setCEmail(insuredVO.getcEmail());//电子邮箱
//                //新增
//                insured.setCSex(insuredVO.getcSex());//性别
//                insured.setCNation(insuredVO.getcNation());//名族
//                insured.setTBirthday(CommonUtil.str2date(insuredVO.gettBirthday()));//出生日期
//                insured.setCAddress(insuredVO.getcAddress());//住址
//                insured.setCGivenDpt(insuredVO.getcGivenDpt());//签发机构
//                insured.setTCertfBgnDate(CommonUtil.str2date(insuredVO.gettIdBgnDate()));//身份证有效始期
//                insured.setTCertfEndDate(CommonUtil.str2date(insuredVO.gettIdEndDate()));//身份证有效止期
//                insured.setTCertfBgnDate(CommonUtil.str2date(insuredVO.gettIdBgnDate()));//身份证有效始期
//                insured.setTCertfEndDate(CommonUtil.str2date(insuredVO.gettIdEndDate()));//身份证有效止期
//                insured.setCIdCollectionMachine(insuredVO.getcIdCollectionMachine());//采集器编码
//                insured.setCClntMrk(insuredVO.getcClntMrk());//被保险人类型
//            }
//            //车主信息
//            if (vhlownerVO != null) {
//                vhlowner1 = new AppVhlownerVO();
//                // add by yangwentao reason:RM-3914关系人名称校验规则-禁止录入符号-车险渠道  审人:李振民  评审时间:2018.01.15  date：2018-01-12 begin
//                CommonUtil.checkSymbol(vhlownerVO.getcOwnerNme());
//                // add by yangwentao reason:RM-3914关系人名称校验规则-禁止录入符号-车险渠道  审人:李振民  评审时间:2018.01.15  date：2018-01-12 end
//                vhlowner1.setCOwnerNme(vhlownerVO.getcOwnerNme());//车主名称
//                vhlowner1.setCCertfCls(vhlownerVO.getcCertfCls());//车主证件类型
//                vhlowner1.setCCertfCde(vhlownerVO.getcCertfCde());//车主证件号码
//                vhlowner1.setCResidAddr(vhlownerVO.getcResidAddr());//车主地址
//                vhlowner1.setCZipCde(vhlownerVO.getcZipCde());//车主邮政编码
//                vhlowner1.setCOwnerCls(vhlownerVO.getcOwnerCls());//车主类别
//                vhlowner1.setCWorkdptKind(vhlownerVO.getcWorkdptKind());//
//                vhlowner1.setCClntAddr(vhlownerVO.getcClntAddr());//
//                // add by yangwentao reason:RM-4364北京车险信息平台增加机动车损失保险示范条款（全面型）-车险渠道  评审人:朱海涛   评审时间:2018.02.27  date：2018-02-26 begin
//                carCommonService.ownerNatures(vhlowner1, vhlownerVO);//车主性质
//                // add by yangwentao reason:RM-4364北京车险信息平台增加机动车损失保险示范条款（全面型）-车险渠道  评审人:朱海涛   评审时间:2018.02.27  date：2018-02-26 end
//                vhlOwnerList1.add(vhlowner1);//将车主信息存入集合中
//            }
//            //交强险信息
//            if (packageJQ != null) {
//                List<FixSpecVO> fixSpecList = request.getRequestBody().getPackageJQVO().getFixSpecList();
//                // 校验数据申请单号有效性
//                // appMainService.effectiveDataCheck(packageJQ.getcAppNo(),
//                // "1");
//                packageJQVO = new com.isoftstone.pcis.policy.vo.PackageJQVO();
//                packageJQVO.setCAppNo(packageJQ.getcAppNo());// 申请单号
//                packageJQVO.setCProdNo(packageJQ.getcProdNo());// 产品代码
//                packageJQVO.setCQryCde(packageJQ.getcQryCde());// 平台查询码
//                packageJQVO.setCPlyTyp(packageJQ.getcPlyTyp());// 保单形式
//                packageJQVO.setCInvType(packageJQ.getcInvType());// 电子发票
//                // add by gouyanqi date:2018-3-26 reson:RM-4704 承保转人工核保 begin
//                packageJQVO.setcTonageNumsFlag(packageJQ.getcTonageNumsFlag());
//                // add by gouyanqi date:2018-3-26 reson:RM-4704 承保转人工核保 end
//                //add by lizhenmin date：2017-12-04 reason：RM-3289 添加C端流量标识——渠道平台 begin
//                if (systemConfigService.getProperty("ctrafficSignsControlForChannelCode").contains(request.getRequestBody().getChannel().getChannelCode())) {
//                    packageJQVO.setCSiGn("C");//添加C端流量标识
//                }
//                //add by lizhenmin date：2017-12-04 reason：RM-3289 添加C端流量标识——渠道平台 end
//                //add by lizhenmin date：2017-12-04 reason：RM-3370 【车险】保费分期项目 begin
//                packageJQVO.setCInstMrk(packageJQ.getCinstMrk());//添加C端流量标识
//                //add by lizhenmin date：2017-12-04 reason：RM-3370 【车险】保费分期项目 end
//                //add by lizhenmin date：2017-12-14 reason：RM-2456 B2B系统分享H5页面 begin
//                packageJQVO.setDataSrcForB2B(packageJQ.getDataSrcForB2B());//区分B2B业务来源
//                //add by lizhenmin date：2017-12-14 reason：RM-2456 B2B系统分享H5页面 end
////                if (packageJQ.gettReadTm() != null && !"".equals(packageJQ.gettReadTm())) {
////                    packageJQVO.setTReadTmJQ(new SimpleDateFormat("yyyyMMddHHmmss").parse(packageJQ.gettReadTm()));//客户阅读确认投保信息时间
////                    Date time = new SimpleDateFormat("yyyyMMddHHmmss").parse(packageJQ.gettReadTm());
////                    Date dateNow = new Date();
////                    Date beforeWeek = new Date();
////                    Calendar cal = Calendar.getInstance();
////                    cal.setTime(dateNow);
////                    cal.add(Calendar.HOUR, -24);
////                    beforeWeek = cal.getTime();
////
////                    if (time.after(dateNow) || time.before(beforeWeek)) {
////                        throw new BusinessException("0019", "客户阅读确认投保信息时间不得早于24小时前并且不得晚于当前时间");
////                    } else {
////                        packageJQVO.setTReadTmJQ(new SimpleDateFormat("yyyyMMddHHmmss").parse(packageJQ.gettReadTm()));//客户阅读确认投保信息时间
////                    }
////                }
//                if (packageJQ.gettReadTm() != null && !"".equals(packageJQ.gettReadTm())) {
//                    packageJQVO.setTReadTmJQ(new SimpleDateFormat("yyyyMMddHHmmss").parse(packageJQ.gettReadTm()));
//
//                }
//                //Modify by wangxiaodong date：2017-12-25 reason：RM-3544 投保阅读确认时间 end
//                //车辆信息
//                vhlVO = packageJQ.getVhlVO();
//                if (vhlVO != null) {
//                    AppVhlVO vhl = new AppVhlVO();
//                    vhl.setCAppNo(vhlVO.getcAppNo());//申请单号
//                    vhl.setCAppValidateNo(vhlVO.getcAppValidateNo());//承保验证码
//                    vhl.setCCertificateDate(vhlVO.getcCertificateDate());
//                    packageJQVO.setJQ_vhl(vhl);
//                }
//                //特别约定信息wangxiaodong
//                if (request.getRequestBody().getPackageJQVO().getArrayOfFixSpecVO() != null) {
//                    fixSpecList = request.getRequestBody().getPackageJQVO().getArrayOfFixSpecVO().getFixSpecList();
//                    if (fixSpecList != null && fixSpecList.size() > 0) {
//                        List<AppFixSpecVO> appFixSpecList = new ArrayList<AppFixSpecVO>();//特约
//                        for (FixSpecVO fixSpecVO : fixSpecList) {
//                            AppFixSpecVO appFixSpecVO = new AppFixSpecVO();
//                            appFixSpecVO.setCSpecNo(fixSpecVO.getcSpecNo());
//                            appFixSpecVO.setCSpecContent(fixSpecVO.getcSysSpecContent());
//                            appFixSpecList.add(appFixSpecVO);
//                        }
//                        packageJQVO.setCunfixSpc(appFixSpecList);
//                    }
//                }
//            }
//            //商业险信息
//            if (packageSY != null) {
//                // 校验数据申请单号有效性
//                // appMainService.effectiveDataCheck(packageSY.getcAppNo(),
//                // "1");
//                List<FixSpecVO> fixSpecList = request.getRequestBody().getPackageSYVO().getFixSpecList();
//                packageSYVO = new com.isoftstone.pcis.policy.vo.PackageSYVO();
//
//                packageSYVO.setCAppNo(packageSY.getcAppNo());// 申请单号
//                packageSYVO.setCProdNo(packageSY.getcProdNo());// 产品代码
//                packageSYVO.setCQryCde(packageSY.getcQryCde());// 平台查询码
//                packageSYVO.setCPlyTyp(packageSY.getcPlyTyp());// 保单形式
//                packageSYVO.setCInvType(packageSY.getcInvType());// 发票形式
//                // add by gouyanqi date:2018-3-26 reson:RM-4704 承保转人工核保 begin
//                packageSYVO.setcTonageNumsFlag(packageSY.getcTonageNumsFlag());
//                // add by gouyanqi date:2018-3-26 reson:RM-4704 承保转人工核保 end
//                //add by lizhenmin date：2017-12-14 reason：RM-3289 添加C端流量标识——渠道平台 begin
//                if (systemConfigService.getProperty("ctrafficSignsControlForChannelCode").contains(request.getRequestBody().getChannel().getChannelCode())) {
//                    packageSYVO.setCSiGn("C");//添加C端流量标识
//                }
//                //add by lizhenmin date：2017-12-14 reason：RM-3289 添加C端流量标识——渠道平台 end
//                //add by lizhenmin date：2017-12-14 reason：RM-3370 【车险】保费分期项目 begin
//                packageSYVO.setCInstMrk(packageSY.getCinstMrk());//分期标志
//                //add by lizhenmin date：2017-12-14 reason：RM-3370 【车险】保费分期项目 end
//                //add by lizhenmin date：2017-12-14 reason：RM-2456 B2B系统分享H5页面 begin
//                packageSYVO.setDataSrcForB2B(packageSY.getDataSrcForB2B());//区分B2B业务来源
//                //add by lizhenmin date：2017-12-14 reason：RM-2456 B2B系统分享H5页面 end
//                //Modify by wangxiaodong date：2017-12-25 reason：RM-3544 投保阅读确认时间 start
//                //获取的时间不得早于24小时前并且不得晚于当前时间
////                if (packageSY.gettReadTm() != null && !"".equals(packageSY.gettReadTm())) {
////                    Date time = new SimpleDateFormat("yyyyMMddHHmmss").parse(packageSY.gettReadTm());
////                    Date dateNow = new Date();
////                    Date beforeWeek = new Date();
////                    Calendar cal = Calendar.getInstance();
////                    cal.setTime(dateNow);
////                    cal.add(Calendar.HOUR, -24);
////                    beforeWeek = cal.getTime();
////                    if (time.after(dateNow) || time.before(beforeWeek)) {
////                        throw new BusinessException("0019", "客户阅读确认投保信息时间不得早于24小时前并且不得晚于当前时间");
////                    } else {
////                        packageSYVO.setTReadTmSY(new SimpleDateFormat("yyyyMMddHHmmss").parse(packageSY.gettReadTm()));//客户阅读确认投保信息时间
////                    }
////                }
//                if (packageSY.gettReadTm() != null && !"".equals(packageSY.gettReadTm())) {
//                    packageSYVO.setTReadTmSY(new SimpleDateFormat("yyyyMMddHHmmss").parse(packageSY.gettReadTm()));//客户阅读确认投保信息时间
//                }
//                //Modify by wangxiaodong date：2017-12-25 reason：RM-3544 投保阅读确认时间 end
//                // 车辆信息
//                vhlVO = packageSY.getVhlVO();
//                if (vhlVO != null) {
//                    AppVhlVO vhl = new AppVhlVO();
//                    vhl.setCAppNo(vhlVO.getcAppNo());//申请单号
//                    vhl.setCAppValidateNo(vhlVO.getcAppValidateNo());//承保验证码
//                    vhl.setCCertificateDate(vhlVO.getcCertificateDate());
//                    packageSYVO.setSY_vhl(vhl);
//                }
//                //特约内容王晓东
//                if (request.getRequestBody().getPackageSYVO().getArrayOfFixSpecVO() != null) {
//                    fixSpecList = request.getRequestBody().getPackageSYVO().getArrayOfFixSpecVO().getFixSpecList();
//                    if (fixSpecList != null && fixSpecList.size() > 0) {
//                        List<AppFixSpecVO> appFixSpecList = new ArrayList<AppFixSpecVO>();//特约
//                        for (FixSpecVO fixSpecVO : fixSpecList) {
//                            AppFixSpecVO appFixSpecVO = new AppFixSpecVO();
//                            appFixSpecVO.setCSpecNo(fixSpecVO.getcSpecNo());
//                            appFixSpecVO.setCSpecContent(fixSpecVO.getcSysSpecContent());
//                            appFixSpecList.add(appFixSpecVO);
//                        }
//                        packageSYVO.setCunfixSpc(appFixSpecList);
//
//                    }
//                }
//
//            }
//            //配送信息
//            if (deliveryVO != null) {
//                delivery1 = new com.isoftstone.pcis.policy.vo.DeliveryVO();
//                delivery1.setCSignInCnm(deliveryVO.getcSignInCnm());//签收人
//                delivery1.setCSignInTel(deliveryVO.getcSignInTel());//签收人电话
//                delivery1.setCSendOrderAddr(deliveryVO.getcSendOrderAddr());//送单地址
//                DeliveryVOList.add(delivery1);//将配送信息存入集合中
//            }
//            policyApplicationApi.setApplicant(applicant);                 //将投保人信息传给安心请求对象
//            policyApplicationApi.setInsured(insured);                     //将被保人信息传给安心请求对象
//            policyApplicationApi.setPackageJQVO(packageJQVO);             //将交强险信息传给安心请求对象
//            policyApplicationApi.setPackageSYVO(packageSYVO);             //将商业险信息传给安心请求对象
//            policyApplicationApi.putComponent("Delivery", DeliveryVOList);//将配送信息传递给安心请求对象
//            policyApplicationApi.putComponent("Vhlowner", vhlOwnerList1); //将车主信息传递给安息请求对象
//            logService.objectPrint("申请核保请求数据", policyApplicationApi);
//            // add by yangwentao reason:RM-3914关系人名称校验规则-禁止录入符号-车险渠道  审人:李振民  评审时间:2018.01.15  date：2018-01-12 begin
//        } catch (BusinessException e) {
//            logger.error("", e);
//            throw e;
//            // add by yangwentao reason:RM-3914关系人名称校验规则-禁止录入符号-车险渠道  审人:李振民  评审时间:2018.01.15  date：2018-01-12 end
//        } catch (Exception e) {
//            logger.error("运行异常：", e);
//            throw new BusinessException(SystemParamFinal.BUSINESS_EXCEPTION_0019);
//        }
//        return policyApplicationApi;
//    }
//
//    /**
//     * 投保返回数据
//     *
//     * @param request              {@link ProposalGenerateRequest}
//     * @param responseBody         {@link ProposalGenerateResponseMain}
//     * @param policyApplicationApi dubbo申请核保API
//     * @throws BusinessException
//     */
//    private void proposalGenerateResponse(ProposalGenerateRequest request, ProposalGenerateResponseMain responseBody, PolicyApplicationApi policyApplicationApi) throws Exception {
//        String ilogSaleNo = request.getRequestBody().getIlogSaleNo();
//        boolean ilogflag = "1".equals(systemConfigService.getProperty("ilogSwitch")) || (!BaseUtile.strIsNullorEmpty(ilogSaleNo)
//                && businessJobNoConifgService.getIlogNoSet().contains(ilogSaleNo));
//
//        //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 begin
//        //支付信息保存到表
//        List<OrderMoneySave> orderMoneySaveList = new ArrayList<OrderMoneySave>();
//        OrderMoneySave JQorderMoneySave = null;
//        OrderMoneySave SYorderMoneySave = null;
//        //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 end
//        logger.info(System.getProperty("line.separator") + "----------------------------------------申请核保返回数据----------------------------------------" + System.getProperty("line.separator") + CommonUtil.dto2xml(policyApplicationApi) + System.getProperty("line.separator") + "----------------------------------------申请核保返回数据----------------------------------------" + System.getProperty("line.separator"));
//
//        PackageJQVO packageJQ = request.getRequestBody().getPackageJQVO();
//        PackageSYVO packageSY = request.getRequestBody().getPackageSYVO();
//        //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 begin
//        String channelCode = request.getRequestBody().getChannel().getChannelCode();
//        BigDecimal money = new BigDecimal(0); //支付总金额
//        //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 end
//        try {
//            if (policyApplicationApi == null) {
//                throw new BusinessException(SystemParamFinal.BUSINESS_EXCEPTION_0020);
//            }
//            com.isoftstone.pcis.policy.vo.PackageJQVO packageJQVO = null;
//            com.isoftstone.pcis.policy.vo.PackageSYVO packageSYVO = null;
//            packageJQVO = policyApplicationApi.getPackageJQVO();
//            packageSYVO = policyApplicationApi.getPackageSYVO();
//            String flag = "";//成功失败标志
//            String cerrRes = "";//失败原因
//            //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 begin
//            AppMain syAppMain = null;
//            AppMain jqAppMain = null;
//            //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 end
//
//            //收集商业险返回信息
//            if (packageSY != null && packageSYVO != null) {
//                flag = packageSYVO.getFlag();
//                if (flag != null && !"".equals(flag)) {
//                    cerrRes = packageSYVO.getCerrRes();
//
//                    if ((SystemParamFinal.FLAG_UNEFFECTIVE).equals(flag)) {//失败
//                        //add by zhaoqi reason:RM-3232车险渠道的支付流程改造  评审人:李振民  评审时间:2018-02-11  date：2018-02-10	 begin
//                        responseBody.setOrderNo(null);
//                        //add by zhaoqi reason:RM-3232车险渠道的支付流程改造  评审人:李振民  评审时间:2018-02-11  date：2018-02-10	 end
//                        packageSY.setFlag(flag);
//                        if (cerrRes != null && !"".equals(cerrRes)) {
//                            //add by yangwentao 四端提示语优化   RM-3540  2017.12.15	评审人:李振民  评审时间:2018.01.10 begin
//                            //四端提示语优化开关
//                            if (null != channelCode && !"".equals(channelCode)) {
//                                if (systemConfigService.getProperty("optimizationOfHints").contains(channelCode)) {
//                                    OptimizeErrorService OptimizeErrorImpl = new OptimizeErrorService();
//                                    packageSY.setCerrRes(OptimizeErrorImpl.underwritingOptimization(cerrRes));
//                                } else {
//                                    packageSY.setCerrRes(cerrRes);
//                                }
//                            } else {
//                                packageSY.setCerrRes(cerrRes);
//                            }
//                            //add by yangwentao 四端提示语优化   RM-3540  2017.12.15	评审人:李振民  评审时间:2018.01.10 end
//                        } else {
//                            packageSY.setCerrRes("申请核保服务失败！");
//                        }
//                        //add by lizhenmin reason:ilog规则调整开关  date：2017-12-28 begin
//                    } else if (ilogflag && "1".equals(flag) && packageSYVO.getIlogRuleFlag() != null && !"0".equals(packageSYVO.getIlogRuleFlag())) {
//                        packageSY.setFlag("0");
//                        packageSY.setCerrRes(packageSYVO.getIlogRuleDescription());
//                        if (packageSYVO.getIlogRuleDescription() != null && !"".equals(packageSYVO.getIlogRuleDescription())) {
//                            throw new BusinessException("0011", "车险渠道平台规则返回提示信息:" + packageSYVO.getIlogRuleDescription());
//                        } else {
//                            throw new BusinessException("0011", "车险渠道平台规则返回错误状态，但没有错误提示信息！");
//                        }
//                        //add by lizhenmin reason:ilog规则调整开关  date：2017-12-28 begin
//                    } else {//成功
//                        //RM-4704核保转人工 add by gouyanqi   2018-3-24 begin
//                        packageSY.setcUdrMrk(packageSYVO.getCUdrMrk());
//                        packageSY.setcUdrMsg(packageSYVO.getcUdrMsg());
//                        try {
//                            String channelID = manualUnderwritingRecordMapper.selectByPrimaryKey(packageJQVO.getCAppNo());
//                            if (packageSYVO.getCUdrMrk() != null && "1".equals(packageSYVO.getCUdrMrk()) && channelID == null) {
//                                ManualUnderwritingRecord manualUnderwritingRecord = new ManualUnderwritingRecord();
//                                manualUnderwritingRecord.setAppNo(packageSYVO.getCAppNo());
//                                manualUnderwritingRecord.setChannelCode(request.getRequestBody().getChannel().getChannelCode());
//                                manualUnderwritingRecordMapper.addOneItem(manualUnderwritingRecord);
//                            }
//                        } catch (Exception e) {
//                            logger.info("转人工数据插入异常：", e);
//                            throw new BusinessException("manualUnderwritingRecordMapper.addOneItem", "转人工数据插入异常");
//                        }
//                        //RM-4704核保转人工 add by gouyanqi  2018-3-24 end
//                        packageSY.setcAppNo(packageSYVO.getCAppNo());//申请单号
//                        packageSY.setcProdNo(packageSYVO.getCProdNo());//产品单号
//                        packageSY.setcUdrMrk(packageSYVO.getCUdrMrk());//核保状态
//                        packageSY.setcUdrMsg(packageSYVO.getcUdrMsg());//核保状态信息
//                        packageSY.setFlag(flag);//是否成功标志位
//                        packageSY.setCerrRes(CommonUtil.removeSpecialCharactersFromTheEndOfTheString(cerrRes));//失败原因
//                        //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 begin
//                        SYorderMoneySave = new OrderMoneySave();
//                        SYorderMoneySave.setcAppNo(packageSYVO.getCAppNo()); //申请单号
//                        SYorderMoneySave.setChannelCode(channelCode); //渠道
//                        SYorderMoneySave.setcResvTxt1("SY"); //渠道
//                        //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 end
//                        //收集车辆信息
//                        AppVhlVO sY_vhl = packageSYVO.getSY_vhl();
//                        if (sY_vhl != null) {
//                            VhlVO vhlVO = new VhlVO();
//                            vhlVO.setcAppNo(sY_vhl.getCAppNo());
//                            packageSY.setVhlVO(vhlVO);
//                        }
//
//                        //收集特约信息
//                        ArrayOfFixSpecVO arrayOfFixSpecVO = new ArrayOfFixSpecVO();
//                        packageSY.setArrayOfFixSpecVO(arrayOfFixSpecVO);
//                        arrayOfFixSpecVO.setFixSpecList(carCommonService.cunfixSpc2FixSpecList(packageSYVO.getCunfixSpc()));
//                        // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台    评审人:李振民  评审日期:2018-01-03 date：2017-12-28 begin
//                        long firstTime = System.currentTimeMillis();
//                        // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台    评审人:李振民  评审日期:2018-01-03 date：2017-12-28 end
//                        //调用订单生成服务
//                        orderCommonService.orderInsert(request, responseBody, policyApplicationApi, "1");
//                        // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台   评审人:李振民  评审日期:2018-01-03 date：2017-12-28 begin
//                        Map<Object, Object> map = request.getRequestBody().getMap();
//                        CommonUtil.timeLog(firstTime, "syOrderCommonUseTime", map);
//                        // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03 date：2017-12-28 end
//                    }
//                    //记录投保结果-回写appmain表数据
//                    syAppMain = appMainService.app_flow1_record(packageSY);
//                    //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 begin
//                    if (!"0".equals(flag) && syAppMain != null) {
//                        BigDecimal JQmoney = new BigDecimal(syAppMain.getPrm().toString());//商业险金额
//                        money = money.add(JQmoney);
//                        logger.info("++++++++++++商业险保费" + syAppMain.getPrm() + "++++++++++");
//                        if (SYorderMoneySave != null) {
//                            String tPrm = syAppMain.getPrm().toString(); //商业险金额
//                            SYorderMoneySave.setNprm(tPrm);
//                            orderMoneySaveList.add(SYorderMoneySave);
//                        }
//                    }
//                    //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 end
//                }
//            }
//            //收集交强险返回信息
//            if (packageJQ != null && packageJQVO != null) {
//                flag = packageJQVO.getFlag();
//                if (flag != null && !"".equals(flag)) {
//                    cerrRes = packageJQVO.getCerrRes();
//                    if ((SystemParamFinal.FLAG_UNEFFECTIVE).equals(flag)) {//失败
//                        //add by zhaoqi reason:RM-3232车险渠道的支付流程改造  评审人:李振民  评审时间:2018-02-11  date：2018-02-10	 begin
//                        responseBody.setOrderNo(null);
//                        //add by zhaoqi reason:RM-3232车险渠道的支付流程改造  评审人:李振民  评审时间:2018-02-11  date：2018-02-10	 end
//                        packageJQ.setFlag(flag);
//                        if (cerrRes != null && !"".equals(cerrRes)) {
//                            //add by yangwentao 四端提示语优化   RM-3540  2017.12.15	评审人:李振民  评审时间:2018.01.10 begin
//                            //四端提示语优化开关
//                            if (null != channelCode && !"".equals(channelCode)) {
//                                if (systemConfigService.getProperty("optimizationOfHints").contains(channelCode)) {
//                                    OptimizeErrorService OptimizeErrorImpl = new OptimizeErrorService();
//                                    packageJQ.setCerrRes(OptimizeErrorImpl.underwritingOptimization(cerrRes));
//                                } else {
//                                    packageJQ.setCerrRes(cerrRes);
//                                }
//                            } else {
//                                packageJQ.setCerrRes(cerrRes);
//                            }
//
//                            //add by yangwentao 四端提示语优化   RM-3540 评审人:李振民  评审时间:2018.01.10 2017.12.15	 end
//                        } else {
//                            packageJQ.setCerrRes("申请核保服务失败！");
//                        }
//                        //add by lizhenmin reason:ilog规则调整开关  date：2017-12-28 begin
//                    } else if (ilogflag && "1".equals(flag) && packageJQVO.getIlogRuleFlag() != null && !"0".equals(packageJQVO.getIlogRuleFlag())) {
//                        packageJQ.setFlag("0");
//                        packageJQ.setCerrRes(packageJQVO.getIlogRuleDescription());
//                        if (packageJQVO.getIlogRuleDescription() != null && !"".equals(packageJQVO.getIlogRuleDescription())) {
//                            throw new BusinessException("0011", "车险渠道平台规则返回提示信息:" + packageJQVO.getIlogRuleDescription());
//                        } else {
//                            throw new BusinessException("0011", "车险渠道平台规则返回错误状态，但没有错误提示信息！");
//                        }
//                        //add by lizhenmin reason:ilog规则调整开关  date：2017-12-28 begin
//                    } else {
//                        //RM-4704核保转人工 add by gouyanqi  2018-3-24 begin
//                        packageJQ.setcUdrMrk(packageJQVO.getCUdrMrk());//核保状态 1：转人工 0：拒保 2自核 -1 失败
//                        packageJQ.setcUdrMsg(packageJQVO.getcUdrMsg());//核保状态信息
//                        try {
//                            String channelID = manualUnderwritingRecordMapper.selectByPrimaryKey(packageJQVO.getCAppNo());
//                            if (packageJQVO.getCUdrMrk() != null && "1".equals(packageJQVO.getCUdrMrk()) && channelID == null) {
//                                ManualUnderwritingRecord manualUnderwritingRecord = new ManualUnderwritingRecord();
//                                manualUnderwritingRecord.setAppNo(packageJQVO.getCAppNo());
//                                manualUnderwritingRecord.setChannelCode(request.getRequestBody().getChannel().getChannelCode());
//                                manualUnderwritingRecordMapper.addOneItem(manualUnderwritingRecord);
//                            }
//                        } catch (Exception e) {
//                            logger.info("转人工数据插入异常：", e);
//                            throw new BusinessException("manualUnderwritingRecordMapper.addOneItem", "转人工数据插入异常");
//                        }
//                        //RM-4704核保转人工 add by gouyanqi  2018-3-24 end
//                        //成功
//                        packageJQ.setcAppNo(packageJQVO.getCAppNo());//申请单号
//                        packageJQ.setcProdNo(packageJQVO.getCProdNo());//产品单号
//                        packageJQ.setcUdrMrk(packageJQVO.getCUdrMrk());//核保状态
//                        packageJQ.setcUdrMsg(packageJQVO.getcUdrMsg());//核保状态信息
//                        packageJQ.setFlag(flag);//是否成功标志位
//                        packageJQ.setCerrRes(CommonUtil.removeSpecialCharactersFromTheEndOfTheString(cerrRes));//失败原因
//                        //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 begin
//                        JQorderMoneySave = new OrderMoneySave();
//                        JQorderMoneySave.setcAppNo(packageJQVO.getCAppNo()); //申请单号
//                        JQorderMoneySave.setChannelCode(channelCode); //渠道
//                        JQorderMoneySave.setcResvTxt1("JQ");
//                        //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 end
//                        //收集车辆信息
//                        AppVhlVO jQ_vhl = packageJQVO.getJQ_vhl();
//                        if (jQ_vhl != null) {
//                            VhlVO vhlVO = new VhlVO();
//                            vhlVO.setcAppNo(jQ_vhl.getCAppNo());
//                            packageJQ.setVhlVO(vhlVO);
//                        }
//                        //收集特约信息
//                        ArrayOfFixSpecVO arrayOfFixSpecVO = new ArrayOfFixSpecVO();
//                        packageJQ.setArrayOfFixSpecVO(arrayOfFixSpecVO);
//                        arrayOfFixSpecVO.setFixSpecList(carCommonService.cunfixSpc2FixSpecList(packageJQVO.getCunfixSpc()));
//                        // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台   评审人:李振民  评审日期:2018-01-03 date：2017-12-28 begin
//                        long firstTime = System.currentTimeMillis();
//                        // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台    评审人:李振民  评审日期:2018-01-03 date：2017-12-28 end
//                        // 调用订单生成服务
//                        orderCommonService.orderInsert(request, responseBody, policyApplicationApi, "0");
//                        // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台   评审人:李振民  评审日期:2018-01-03 date：2017-12-28 begin
//                        Map<Object, Object> map = request.getRequestBody().getMap();
//                        CommonUtil.timeLog(firstTime, "jqOrderCommonUseTime", map);
//                        // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台    评审人:李振民  评审日期:2018-01-03 date：2017-12-28 end
//                    }
//                    //记录投保结果-回写appmain表数据
//                    jqAppMain = appMainService.app_flow1_record(packageJQ);
//                    //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 begin
//                    if (!"0".equals(flag) && jqAppMain != null) {
//                        logger.info("++++++++++++交强险保费" + jqAppMain.getPrm() + "++++++++++");
//                        BigDecimal JQmoney = new BigDecimal(jqAppMain.getPrm().toString());//交强险金额
//                        money = money.add(JQmoney);
//                        logger.info("++++++++++++车船税" + jqAppMain.getNaggtax() + "++++++++++");
//                        BigDecimal naggtax = new BigDecimal(jqAppMain.getNaggtax().toString());//车船税
//                        money = money.add(naggtax);
//                        if (JQorderMoneySave != null) {
//                            String tPrm = jqAppMain.getPrm().toString();   //交强险金额
//                            JQorderMoneySave.setNprm(tPrm);
//                            JQorderMoneySave.setNaggtax(jqAppMain.getNaggtax().toString());
//                            orderMoneySaveList.add(JQorderMoneySave);
//                        }
//
//                    }
//                    //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 begin
//                }
//            }
//            //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 begin
//            if (systemConfigService.getProperty("orderMoneySave").contains(channelCode)) {
//
//                if (money != null && !"0".equals(money.toString())) {
//
//                    // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03 date：2017-12-28 begin
//                    long firstTime = System.currentTimeMillis();
//                    // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03 date：2017-12-28 end
//                    responseBody.setTransNo(this.obtainTransNo(money, orderMoneySaveList, channelCode));//商户订单号
//
//                    // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台   评审人:李振民  评审日期:2018-01-03 date：2017-12-28 begin
//                    Map<Object, Object> map = request.getRequestBody().getMap();
//                    CommonUtil.timeLog(firstTime, "orderMoneySaveUseTime", map);
//                    // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台   评审人:李振民  评审日期:2018-01-03 date：2017-12-28 end
//                }
//            }
//            //add by yangwentao 支付平台金额校验   RM-2460  2017-10-16	 end
//
//            responseBody.setPackageJQVO(packageJQ);
//            responseBody.setPackageSYVO(packageSY);
//        } catch (BusinessException e) {
//            logger.info("运行异常：", e);
//            throw e;
//        } catch (Exception e) {
//            logger.info("运行异常：", e);
//            throw new BusinessException(SystemParamFinal.BUSINESS_EXCEPTION_0021);
//        }
//    }
//
//    /***
//     * 车险投保政策调整（反欺诈风险）（保存规则信息） 郭建新
//     */
//    private void saveGZ(ProposalGenerateRequest request) throws Exception {
//        try {
//            // 商业险规则校验
//            if (request.getRequestBody().getPackageSYVO() != null) {
//
//                ConserveVo conserveVo = null;// 规则请求对象
//                ConserveVo conserveVoResponse = null;// 规则返回对象
//
//                // 收集规则请求数据
//                conserveVo = this.conserveRequestSYCollect(request);
//                // 请求规则
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//                long firstTime = System.currentTimeMillis();
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//                // 规则返回数据
//                conserveVoResponse = vhlConserveRuleService.checkRule(conserveVo); // 保存规则
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//                Map<Object, Object> map = request.getRequestBody().getMap();
//                CommonUtil.timeLog(firstTime, "syRulesUseTime", map);
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//                if (conserveVoResponse != null) {
//                    logger.info(System.getProperty("line.separator")
//                            + "----------------------------------------商业险规则返回数据----------------------------------------"
//                            + CommonUtil.printUUID("", map)
//                            + System.getProperty("line.separator") + CommonUtil.dto2xml(conserveVoResponse)
//                            + System.getProperty("line.separator")
//                            + "----------------------------------------商业险规则返回数据----------------------------------------"
//                            + System.getProperty("line.separator"));
//                    String ruleFlag = "";// 规则标志
//                    ruleFlag = conserveVoResponse.getRuleFlag();
//                    if ("1".equals(ruleFlag)) {
//                        String ruleDescription = "";// 规则描述
//                        ruleDescription = conserveVoResponse.getRuleDescription();
//                        if (ruleDescription != null && !"".equals(ruleDescription)) {
//                            throw new BusinessException("0011", "车险渠道平台规则返回提示信息:" + ruleDescription);
//                        } else {
//                            throw new BusinessException("0011", "车险渠道平台规则返回错误状态，但没有错误提示信息！");
//                        }
//                    }
//                }
//            }
//
//            // 交强险规则校验
//            if (request.getRequestBody().getPackageJQVO() != null) {
//
//                ConserveVo conserveVo = null;// 规则请求对象
//                ConserveVo conserveVoResponse = null;// 规则返回对象
//
//                // 收集规则请求数据
//                conserveVo = this.conserveRequestJQCollect(request);
//                // 请求规则
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//                long firstTime = System.currentTimeMillis();
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//                // 规则返回数据
//                conserveVoResponse = vhlConserveRuleService.checkRule(conserveVo);
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//                Map<Object, Object> map = request.getRequestBody().getMap();
//                CommonUtil.timeLog(firstTime, "jqRulesUseTime", map);
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//
//                if (conserveVoResponse != null) {
//                    logger.info(System.getProperty("line.separator")
//                            + "----------------------------------------交强险规则返回数据----------------------------------------"
//                            + CommonUtil.printUUID("", map)
//                            + System.getProperty("line.separator") + CommonUtil.dto2xml(conserveVoResponse)
//                            + System.getProperty("line.separator")
//                            + "----------------------------------------交强险规则返回数据----------------------------------------"
//                            + System.getProperty("line.separator"));
//                    String ruleFlag = "";// 规则标志
//                    ruleFlag = conserveVoResponse.getRuleFlag();
//                    if ("1".equals(ruleFlag)) {
//                        String ruleDescription = "";// 规则描述
//                        ruleDescription = conserveVoResponse.getRuleDescription();
//                        if (ruleDescription != null && !"".equals(ruleDescription)) {
//                            throw new BusinessException("0011", "车险渠道平台规则返回提示信息:" + ruleDescription);
//                        } else {
//                            throw new BusinessException("0011", "车险渠道平台规则返回错误状态，但没有错误提示信息！");
//                        }
//                    }
//                }
//            }
//        } catch (BusinessException e) {
//            logger.info(SystemParamFinal.Exception_LOG, e);
//            throw e;
//        } catch (Exception e) {
//            logger.info(SystemParamFinal.Exception_LOG, e);
//            throw new BusinessException("0011", "车险渠道平台规则引擎交互异常！");
//        }
//
//    }
//
//    /***
//     *
//     * @param request
//     *
//     * @return
//     * @throws Exception
//     */
//    private ConserveVo conserveRequestSYCollect(ProposalGenerateRequest request) throws Exception {
//        ConserveVo conserveVo = new ConserveVo();// 保存规则信息
//        List<ItemKindVo> itemKindList = null;// 险别信息
//        ItemKindVo itemKindVo = null;
//        if (request.getRequestBody().getPackageSYVO() != null) {
//            // 商业险投保单号
//            String syAppNo = request.getRequestBody().getPackageSYVO().getcAppNo();
//            // 获取保单详情信息
//            logger.info(System.getProperty("line.separator")
//                    + "----------------------------------------保单详情接口收集商业险请求规则数据----------------------------------------"
//                    + CommonUtil.printUUID("", request.getRequestBody().getMap())
//                    + System.getProperty("line.separator") + syAppNo
//                    + System.getProperty("line.separator")
//                    + "----------------------------------------保单详情接口收集商业险请求规则数据----------------------------------------"
//                    + System.getProperty("line.separator"));
//            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//            long firstTime = System.currentTimeMillis();
//            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//            CarBusinessDetailInfoQueryResponse response = this.appDetailInfoQuery(syAppNo);
//            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//            Map<Object, Object> map = request.getRequestBody().getMap();
//            CommonUtil.timeLog(firstTime, "syRulesBusinessDetailInfoQueryUseTime", map);
//            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//            logger.info(System.getProperty("line.separator")
//                    + "----------------------------------------保单详情接口收集商业险规则返回数据----------------------------------------"
//                    + CommonUtil.printUUID("", map)
//                    + System.getProperty("line.separator") + CommonUtil.dto2xml(response)
//                    + System.getProperty("line.separator")
//                    + "----------------------------------------保单详情接口收集商业险规则返回数据----------------------------------------"
//                    + System.getProperty("line.separator"));
//            try {
//                VhlVO vhlVO = response.getResponseBody().getVhlVO();// 车辆信息
//                BaseVO baseVO = response.getResponseBody().getBaseVO();// 基本信息
//                VhlownerVO vhlownerVO = response.getResponseBody().getVhlownerVO();// 车主信息
//                List<CvrgVO> cvrgList = response.getResponseBody().getCvrgList();// 商业险险别信息
//                PrmCoefVO prmCoefVO = response.getResponseBody().getPrmCoefVO();// 商业险系数信息
//                String fstRegYm = vhlVO.getcFstRegYm();// 初登日期
//                String insrncBgnTm = baseVO.gettInsrncBgnTm();
//                SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
//                Date date = format.parse(insrncBgnTm);
//                SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//                String insrncBgnTm1 = format1.format(date);
//
//
//                if (vhlVO != null) {// 车辆信息
//                    conserveVo.setFrameNumber(vhlVO.getcFrmNo());// 车架号
//                    conserveVo.setcUseYear(carCommonService.useMonthCalculate(fstRegYm, insrncBgnTm1));// 车龄
//                    conserveVo.setcPlateNo(vhlVO.getcPlateNo());// 车牌号码
//                    //调整车险承保指引的通知by wangxiaodong
//                    conserveVo.setRiskModelsFlag(vhlVO.getcRiskFlag());//风险车型标志
//                    conserveVo.setSeat(CommonUtil.str2int(vhlVO.getnSeatNum()));//座位数
//                    conserveVo.setcTypeName(vhlVO.getcModelNme());//车辆类型名称
//                    conserveVo.setnNewPurchaseValue(CommonUtil.str2double(vhlVO.getnNewPurchaseValue()));//新车购置价
//                    conserveVo.setcFuelType(vhlVO.getcFuelType());//机动车燃料总类
//                    conserveVo.setcUsageCde(vhlVO.getcUsageCde());//使用性质
//                    conserveVo.setBusiClaimAmount(CommonUtil.str2double(prmCoefVO.getnTotalClaimAmount()));//商业险赔款金额
//                    conserveVo.setCallSystem("CHANNEL");//调用拒保规则的系统
//                    //end by wangxiaodong
//                }
//                if (prmCoefVO != null) {// 系数信息
//                    conserveVo.setDangerTimes(CommonUtil.str2int(prmCoefVO.getnClaimTime()));// 出险次数
//                }
//                if (baseVO != null) {// 基本信息
//                    conserveVo.setcProvince(baseVO.getcProvince());// 承保地区
//                    conserveVo.setcAreaFlag(baseVO.getcAreaFlag());// 承保市区
//                }
//                //调整车险承保指引的通知start by wangxiaodong
//                if (cvrgList != null && !cvrgList.isEmpty()) {
//                    for (CvrgVO cvrgVO : cvrgList) {
//                        if ("033003".equals(cvrgVO.getcCvrgNo())) {
//                            conserveVo.setDriverEachAmout(CommonUtil.str2double(cvrgVO.getnPerAmt()));//司机每座承保金额
//                        } else if ("033004".equals(cvrgVO.getcCvrgNo())) {
//                            conserveVo.setPassengersEachAmout(CommonUtil.str2double(cvrgVO.getnPerAmt()));//乘客每座承保金额
//                        }
//                    }
//                }
//                //end by wangxiaodong
//                if (cvrgList != null && cvrgList.size() > 0) {// 险别信息
//                    itemKindList = new ArrayList<ItemKindVo>();
//                    for (CvrgVO cvrgVO : cvrgList) {
//                        itemKindVo = new ItemKindVo();
//                        itemKindVo.setKindCode(cvrgVO.getcCvrgNo());// 险别代码
//                        itemKindVo.setKindAmount(cvrgVO.getnAmt());// 险别保额
//                        if ("369004".equals(cvrgVO.getcDductMrk())) {
//                            itemKindVo.setcDductMrk("0");// 是否承保不计免赔
//                        } else if ("369003".equals(cvrgVO.getcDductMrk())) {
//                            itemKindVo.setcDductMrk("1");
//                        }
//                        itemKindList.add(itemKindVo);
//                    }
//                }
//                conserveVo.setItemKindList(itemKindList);// 承保险别列表
//
//                if (vhlownerVO != null) {// 车主信息
//                    conserveVo.setcOwnerName(vhlownerVO.getcOwnerNme());// 车主名称
//                    //add by lizhenmin reason: AXBX-RM-需求规格说明书-车险承保功能需求20171123  date:2017-12-04 begin
//                    if (request.getRequestBody().getVhlownerVO().getcCertfCls() != null && ("100112".equals(request.getRequestBody().getVhlownerVO().getcCertfCls())//统一社会信用代码
//                            || "110001".equals(request.getRequestBody().getVhlownerVO().getcCertfCls())//组织机构代码
//                            || "100114".equals(request.getRequestBody().getVhlownerVO().getcCertfCls())//税务登记证
//                            || "100113".equals(request.getRequestBody().getVhlownerVO().getcCertfCls())//营业执照
//                            || "110002".equals(request.getRequestBody().getVhlownerVO().getcCertfCls())//工商注册号
//                    )) {// 车主类型
//                        conserveVo.setcOwnerCls("0");// 非自然人
//
//                    } else {
//                        conserveVo.setcOwnerCls("1");// 自然人
//
//                    }
//                    //add by lizhenmin reason: AXBX-RM-需求规格说明书-车险承保功能需求20171123  date:2017-12-04 end
//                }
//                conserveVo.setcProdNo(baseVO.getcProdNo());// 险种范围
//
//                String cPlateNo = vhlVO.getcPlateNo();// 车牌号
//                String cFrmNo = vhlVO.getcFrmNo();//车架号
//                String cEngNo = vhlVO.getcEngNo();//发动机号
//                String cOwnerNme = vhlownerVO.getcOwnerNme();// 车主姓名
//                String channelCode = request.getRequestBody().getChannel().getChannelCode();// 渠道代码
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//                long licenseTime = System.currentTimeMillis();
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//                conserveVo.setIsCompulInsur(firstInsureSY(cPlateNo, cFrmNo, cEngNo));// 首次投保商业险(之前未投保过交强险)
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//                Map<Object, Object> licenseMap = request.getRequestBody().getMap();
//                CommonUtil.timeLog(licenseTime, "syLicensePlateQuery", licenseMap);
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//                conserveVo.setIsTransferCar(vhlVO.getcDevice1Mrk());// 是否过户车
//                conserveVo.setApplicant(request.getRequestBody().getApplicantVO().getcAppNme());// 投保人名称
//                //add by lizhenmin reason: AXBX-RM-需求规格说明书-车险承保功能需求20171123  date:2017-12-04 begin
//                ApplicantVO applicantVO = request.getRequestBody().getApplicantVO();
//                if (applicantVO.getcCertfCls() != null && ("100112".equals(applicantVO.getcCertfCls())//统一社会信用代码
//                        || "110001".equals(applicantVO.getcCertfCls())//组织机构代码
//                        || "100114".equals(applicantVO.getcCertfCls())//税务登记证
//                        || "100113".equals(applicantVO.getcCertfCls())//营业执照
//                        || "110002".equals(applicantVO.getcCertfCls())//工商注册号
//                )) {// 投保人类型
//                    conserveVo.setcApplicantCls("0");// 非自然人
//
//                } else {
//                    conserveVo.setcApplicantCls("1");// 自然人
//
//                }
//                //add by lizhenmin reason: AXBX-RM-需求规格说明书-车险承保功能需求20171123  date:2017-12-04 end
//                InsuredVO insuredVO = request.getRequestBody().getInsuredVO();// 被保险人信息
//                if (insuredVO != null) {
//                    String insuredNme = insuredVO.getcInsuredNme();// 被保险人名称
//                    if (insuredNme == null && "".equals(insuredNme)) {
//                        conserveVo.setInsured(vhlownerVO.getcOwnerNme());// 被保人名称：如果不传值的话会默认车主名称
//                        if (vhlownerVO.getcCertfCls() != null && "120001".equals(vhlownerVO.getcCertfCls())) { // 如果是被保险人是车主,并且证件号是身份证,就传身份证号
//                            conserveVo.setIdNumber(vhlownerVO.getcCertfCde());
//                        }
//                    } else {
//                        conserveVo.setInsured(insuredVO.getcInsuredNme());// 被保险人名称
//                    }
//                    // 根据证件类型判断是否是身份证
//                    String cCertfCls = insuredVO.getcCertfCls();// 被保人证件类型
//                    if (cCertfCls != null && "120001".equals(cCertfCls) && !"".equals(cCertfCls)) {
//                        String cCertfCde = insuredVO.getcCertfCde();// 被保险人身份证号
//                        if (IdcardValidator.verify(cCertfCde)) {
//                            conserveVo.setIdNumber(cCertfCde);
//                        }
//                    }
//                    //add by lizhenmin reason: AXBX-RM-需求规格说明书-车险承保功能需求20171123  date:2017-12-04 begin
//                    if (insuredVO.getcCertfCls() != null && ("100112".equals(insuredVO.getcCertfCls())//统一社会信用代码
//                            || "110001".equals(insuredVO.getcCertfCls())//组织机构代码
//                            || "100114".equals(insuredVO.getcCertfCls())//税务登记证
//                            || "100113".equals(insuredVO.getcCertfCls())//营业执照
//                            || "110002".equals(insuredVO.getcCertfCls())//工商注册号
//                    )) {// 被保险人类型
//                        conserveVo.setcInsuredCls("0");// 非自然人
//
//                    } else {
//                        conserveVo.setcInsuredCls("1");// 自然人
//
//                    }
//                    //add by lizhenmin reason: AXBX-RM-需求规格说明书-车险承保功能需求20171123  date:2017-12-04 end
//                }
//                logger.info(System.getProperty("line.separator")
//                        + "----------------------------------------商业险规则请求数据----------------------------------------"
//                        + System.getProperty("line.separator") + CommonUtil.dto2xml(conserveVo)
//                        + System.getProperty("line.separator")
//                        + "----------------------------------------商业险规则请求数据----------------------------------------"
//                        + System.getProperty("line.separator"));
//            } catch (BusinessException e) {
//                throw e;
//            } catch (Exception e) {
//                e.printStackTrace();
//            }
//
//        }
//        return conserveVo;
//    }
//
//    //scm-618 modify by guojianxin 渠道提交核保接口优化  begin 审核人：李振民  审核时间：2018年2月9日
//    private String firstInsureSY(String cPlateNo, String cFrmNo, String cEngNo) throws BusinessException {
//        String compuleInsure = "";
//
//        AppVhlVO vhlVO = new AppVhlVO();
//        vhlVO.setCPlateNo(cPlateNo); //车牌号
//        vhlVO.setCFrmNo(cFrmNo);//车架号
//        vhlVO.setCEngNo(cEngNo);//发动机号
//
//        Map<String, Object> map = this.iqueryJqInformationApi.getFristInsuranceBusinessFlag(vhlVO);
//
//        if ("1".equals(map.get("FLAG"))) {
//            compuleInsure = (String) map.get("FIRSTINSURANCE");
//        } else {
//            String message = (String) map.get("MESSAGE");
//            throw new BusinessException("0076", message);
//        }
//
//        return compuleInsure;
//    }
//    //scm-618 modify by guojianxin 渠道提交核保优化 end 审核人：李振民  审核时间：2018年2月9日
//
//    /**
//     * 商户订单号    编码规则：渠道编码+yyyyMMrrHHmmss+随机数（最多32个字符，可包含字母、数字）
//     *
//     * @param channelCode
//     * @return
//     */
//    private String merchantOrderNumber(String channelCode) {
//        Jedis jedis = JedisUtil.getJedis();
//        Long incr = jedis.incr("hib");
//        jedis.expireAt("hib", TimeUnit.HOURS.toSeconds(3));
//        JedisUtil.returnResource(jedis);
//        int num = (int) (incr % 9999);
//        SimpleDateFormat time = new SimpleDateFormat("yyyyMMddHHmmssSSS");
//        String riqi = time.format(new Date()); //时间戳
//        String redem = channelCode + riqi + num;
//        logger.info("================商户订单号:" + redem + "===============商户订单号长度:" + redem.length());
//        logger.info(redem + "===========" + redem.length());
//        return redem;
//    }
//
//    /**
//     * 获取交易代码
//     *
//     * @param money
//     * @param orderMoneySaveList
//     * @param channelCode
//     * @return
//     * @throws Exception
//     */
//    private String obtainTransNo(BigDecimal money, List<OrderMoneySave> orderMoneySaveList, String channelCode) throws Exception {
//        String transNo = "";
//        SimpleDateFormat time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//        String currentTime = time.format(new Date());
//        try {
//            OrderMoneySaveRequest orderMoneySave = new OrderMoneySaveRequest();
//            //支付平台已分为单位,需要转成分
//            BigDecimal multiplicand = new BigDecimal("100");
//            money = money.multiply(multiplicand);
//            String money1 = money.intValue() + "";
//            transNo = merchantOrderNumber(channelCode);
//            orderMoneySave.setTransNo(transNo);//商户订单号
//            //   orderMoneySave.setTransAmt(money1);//支付金额   //生产
//            orderMoneySave.setTransAmt("1");//支付金额
//            orderMoneySave.setSource("QDPT"); //渠道平台QDPT
//            logger.info("++++++++++++++商品订单号:" + transNo + "++++++++++++++缴费金额:" + money1);
//            for (int i = 0; i < orderMoneySaveList.size(); i++) {
//                if ("JQ".equals(orderMoneySaveList.get(i).getcResvTxt1())) {
//                    orderMoneySaveList.get(i).setTransNo("JQ" + transNo);
//                    // orderMoneySaveList.get(i).setTransAmt(money1);//生产
//                    orderMoneySaveList.get(i).setTransAmt("1");
//                    orderMoneySaveList.get(i).setSource("QDPT");
//                    orderMoneySaveList.get(i).setCurrentTime(currentTime);
//                } else {
//                    orderMoneySaveList.get(i).setTransNo("SY" + transNo);
//                    // orderMoneySaveList.get(i).setTransAmt(money1);//生产
//                    orderMoneySaveList.get(i).setTransAmt("1");
//                    orderMoneySaveList.get(i).setSource("QDPT");
//                    orderMoneySaveList.get(i).setCurrentTime(currentTime);
//                }
//            }
//            //存到orderMoneySave表
//            int insertList = orderMoneySaveMapper.insertList(orderMoneySaveList);
//            logger.info("++++++++++++++商品订单号:" + transNo + "++++++++++++++插入表数据:" + insertList + "条");
//            //存到支付平台
//            orderMoneySaveService.orderMoneySave(orderMoneySave);
//            return transNo;
//
//        } catch (Exception e) {
//            logger.error("ProposalGenerateServiceImpl类obtainTransNo方法异常++++++++++++++", e);
//            throw e;
//        }
//    }
//
//    /**
//     * 禁止一次核保未结束时再进行下次核保
//     *
//     * @param request
//     * @return
//     */
//    private boolean againUnderwritingControl(ProposalGenerateRequest request) {
//       boolean flag = true;
//       try {
//            if (request != null && request.getRequestBody() != null && request.getRequestBody().getPackageJQVO() != null) {
//                flag = JedisUtil.tryGetDistributedLock("jq" + request.getRequestBody().getChannel().getChannelCode() + request.getRequestBody().getPackageJQVO().getcAppNo(), SystemParamFinal.getHostName(), 120000);
//                return flag;
//            }
//            if (request != null && request.getRequestBody() != null && request.getRequestBody().getPackageSYVO() != null) {
//               flag = JedisUtil.tryGetDistributedLock("sy" + request.getRequestBody().getChannel().getChannelCode() + request.getRequestBody().getPackageSYVO().getcAppNo(), SystemParamFinal.getHostName(), 120000);
//                return flag;
//            }
//       } catch (Exception e) {
//            logger.info(SystemParamFinal.Exception_LOG, e);
//       }
//        return flag;
//    }
//
//
//    /**
//     * 小米默认保单类型与发票类型
//     *
//     * @param packageVO {@link PackageVO}
//     * @throws BusinessException
//     */
//    private void xiaoMi(PackageVO packageVO) throws BusinessException {
//        AppMain appMain = appMainService.effectiveDataCheck(packageVO.getcAppNo(), "1");
//        String province2 = appMain.getExtend3();//保单归属地省
//        if ("110000".equals(province2)) {
//            packageVO.setcPlyTyp(SystemParamFinal.PLY_TYPE_1);
//            packageVO.setcInvType("026");
//        } else if (!"110000".equals(province2)) {
//            packageVO.setcPlyTyp(SystemParamFinal.PLY_TYPE_0);
//            packageVO.setcInvType("007");
//        }
//    }
//
//    /***
//     *
//     * @param request
//     * @return
//     * @throws Exception
//     */
//    private ConserveVo conserveRequestJQCollect(ProposalGenerateRequest request) throws Exception {
//        ConserveVo conserveVo = new ConserveVo();// 保存规则信息
//        List<ItemKindVo> itemKindList = null;// 险别信息
//        ItemKindVo itemKindVo = null;
//        if (request.getRequestBody().getPackageJQVO() != null) {
//            // 交强险投保单号
//            String jqAppNo = request.getRequestBody().getPackageJQVO().getcAppNo();
//            // 获取保单详情信息
//            logger.info(System.getProperty("line.separator")
//                    + "----------------------------------------保单详情查询交强险请求规则数据----------------------------------------"
//                    + CommonUtil.printUUID("", request.getRequestBody().getMap())
//                    + System.getProperty("line.separator") + jqAppNo
//                    + System.getProperty("line.separator")
//                    + "----------------------------------------保单详情查询交强险请求规则数据----------------------------------------"
//                    + System.getProperty("line.separator"));
//            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//            long firstTime = System.currentTimeMillis();
//            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//            CarBusinessDetailInfoQueryResponse response = this.appDetailInfoQuery(jqAppNo);
//            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//            Map<Object, Object> map = request.getRequestBody().getMap();
//            CommonUtil.timeLog(firstTime, "jqRulesBusinessDetailInfoQueryUseTime", map);
//            // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//            logger.info(System.getProperty("line.separator")
//                    + "----------------------------------------保单详情查询交强险返回规则数据----------------------------------------"
//                    + CommonUtil.printUUID("", map)
//                    + System.getProperty("line.separator") + CommonUtil.dto2xml(response)
//                    + System.getProperty("line.separator")
//                    + "----------------------------------------保单详情查询交强险返回规则数据----------------------------------------"
//                    + System.getProperty("line.separator"));
//            // add by lizhenmin reason:核保加时间记录核保耗时   date：2017-12-15 end
//            try {
//                VhlVO vhlVO = response.getResponseBody().getVhlVO();// 车辆信息
//                BaseVO baseVO = response.getResponseBody().getBaseVO();// 基本信息
//                VhlownerVO vhlownerVO = response.getResponseBody().getVhlownerVO();// 车主信息
//                List<CvrgVO> cvrgList = response.getResponseBody().getCvrgList();// 交强险险别信息
//                PrmCoefVO prmCoefVO = response.getResponseBody().getPrmCoefVO();// 交强险系数信息
//                String fstRegYm = vhlVO.getcFstRegYm();// 初登日期
//                String insrncBgnTm = baseVO.gettInsrncBgnTm();
//                SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
//                Date date = format.parse(insrncBgnTm);
//                SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//                String insrncBgnTm1 = format1.format(date);
//                if (vhlVO != null) {// 车辆信息
//                    conserveVo.setFrameNumber(vhlVO.getcFrmNo());// 车架号
//                    conserveVo.setcUseYear(carCommonService.useMonthCalculate(fstRegYm, insrncBgnTm1));// 车龄
//                    conserveVo.setcPlateNo(vhlVO.getcPlateNo());// 车牌号码
//                    //调整车险承保指引的通知by wangxiaodong
//                    conserveVo.setRiskModelsFlag(vhlVO.getcRiskFlag());//风险车型标志
//                    conserveVo.setSeat(CommonUtil.str2int(vhlVO.getnSeatNum()));//座位数
//                    conserveVo.setcTypeName(vhlVO.getcModelNme());//车辆类型名称
//                    conserveVo.setnNewPurchaseValue(CommonUtil.str2double(vhlVO.getnNewPurchaseValue()));//新车购置价
//                    conserveVo.setcFuelType(vhlVO.getcFuelType());//机动车燃料总类
//                    conserveVo.setcUsageCde(vhlVO.getcUsageCde());//使用性质
//                    conserveVo.setBusiClaimAmount(CommonUtil.str2double(prmCoefVO.getnTotalClaimAmount()));//商业险赔款金额
//                    conserveVo.setCallSystem("CHANNEL");//调用拒保规则的系统
//                    //end by wangxiaodong
//                }
//                if (prmCoefVO != null) {// 系数信息
//                    conserveVo.setDangerTimes(CommonUtil.str2int(prmCoefVO.getnClaimTime()));// 出险次数
//                }
//                if (baseVO != null) {// 基本信息
////						conserveVo.setcProvince(baseVO.getCprovince());// 承保地区
//                    conserveVo.setcProvince(baseVO.getcProvince());//承保地区
//                    conserveVo.setcAreaFlag(baseVO.getcAreaFlag());// 承保市区
//                }
//                //调整车险承保指引的通知start by wangxiaodong
//                if (cvrgList != null && !cvrgList.isEmpty()) {
//                    for (CvrgVO cvrgVO : cvrgList) {
//                        if ("033003".equals(cvrgVO.getcCvrgNo())) {
//                            conserveVo.setDriverEachAmout(CommonUtil.str2double(cvrgVO.getnPerAmt()));//司机每座承保金额
//                        } else if ("033004".equals(cvrgVO.getcCvrgNo())) {
//                            conserveVo.setPassengersEachAmout(CommonUtil.str2double(cvrgVO.getnPerAmt()));//乘客每座承保金额
//                        }
//                    }
//                }
//                //end by wangxiaodong
//
//                if (cvrgList != null && cvrgList.size() > 0) {// 险别信息
//                    itemKindList = new ArrayList<ItemKindVo>();
//                    for (CvrgVO cvrgVO : cvrgList) {
//                        itemKindVo = new ItemKindVo();
//                        itemKindVo.setKindCode(cvrgVO.getcCvrgNo());// 险别代码
//                        itemKindVo.setKindAmount(cvrgVO.getnAmt());// 险别保额
//                        if ("369004".equals(cvrgVO.getcDductMrk())) {
//                            itemKindVo.setcDductMrk("0");// 是否承保不计免赔
//                        } else if ("369003".equals(cvrgVO.getcDductMrk())) {
//                            itemKindVo.setcDductMrk("1");
//                        }
//                        itemKindList.add(itemKindVo);
//                    }
//                }
//                conserveVo.setItemKindList(itemKindList);// 承保险别列表
//
//                if (vhlownerVO != null) {// 车主信息
//                    conserveVo.setcOwnerName(vhlownerVO.getcOwnerNme());// 车主名称
//                    //add by lizhenmin reason: AXBX-RM-需求规格说明书-车险承保功能需求20171123  date:2017-12-04 begin
//                    if (request.getRequestBody().getVhlownerVO().getcCertfCls() != null && ("100112".equals(request.getRequestBody().getVhlownerVO().getcCertfCls())//统一社会信用代码
//                            || "110001".equals(request.getRequestBody().getVhlownerVO().getcCertfCls())//组织机构代码
//                            || "100114".equals(request.getRequestBody().getVhlownerVO().getcCertfCls())//税务登记证
//                            || "100113".equals(request.getRequestBody().getVhlownerVO().getcCertfCls())//营业执照
//                            || "110002".equals(request.getRequestBody().getVhlownerVO().getcCertfCls())//工商注册号
//                    )) {// 车主类型
//                        conserveVo.setcOwnerCls("0");// 非自然人
//
//                    } else {
//                        conserveVo.setcOwnerCls("1");// 自然人
//
//                    }
//                    //add by lizhenmin reason: AXBX-RM-需求规格说明书-车险承保功能需求20171123  date:2017-12-04 end
//                }
//                conserveVo.setcProdNo(baseVO.getcProdNo());// 险种范围
//
//                String cPlateNo = vhlVO.getcPlateNo();// 车牌号
//                String cFrmNo = vhlVO.getcFrmNo();//车架号
//                String cEngNo = vhlVO.getcEngNo();//发动机号
//                String cOwnerNme = vhlownerVO.getcOwnerNme();// 车主姓名
//                String channelCode = request.getRequestBody().getChannel().getChannelCode();// 渠道代码
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//                long licenseTime = System.currentTimeMillis();
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//                conserveVo.setIsCompulInsur(firstInsureSY(cPlateNo, cFrmNo, cEngNo));// 首次投保商业险(之前未投保过交强险)
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 begin
//                Map<Object, Object> licenseMap = request.getRequestBody().getMap();
//                CommonUtil.timeLog(licenseTime, "jqLicensePlateQuery", licenseMap);
//                // add by yangwentao reason:RM-3612 渠道平台新增时间戳日志-渠道平台  评审人:李振民  评审日期:2018-01-03  date：2017-12-28 end
//                conserveVo.setIsTransferCar(vhlVO.getcDevice1Mrk());// 是否过户车
//                conserveVo.setApplicant(request.getRequestBody().getApplicantVO().getcAppNme());// 投保人名称
//                //add by lizhenmin reason: AXBX-RM-需求规格说明书-车险承保功能需求20171123  date:2017-12-04 begin
//                ApplicantVO applicantVO = request.getRequestBody().getApplicantVO();
//                if (applicantVO.getcCertfCls() != null && ("100112".equals(applicantVO.getcCertfCls())//统一社会信用代码
//                        || "110001".equals(applicantVO.getcCertfCls())// 组织机构代码
//                        || "100114".equals(applicantVO.getcCertfCls())// 税务登记证
//                        || "100113".equals(applicantVO.getcCertfCls())// 营业执照
//                        || "110002".equals(applicantVO.getcCertfCls())// 工商注册号
//                )) {// 投保人类型
//                    conserveVo.setcApplicantCls("0");// 非自然人
//
//                } else {
//                    conserveVo.setcApplicantCls("1");// 自然人
//
//                }
//                //add by lizhenmin reason: AXBX-RM-需求规格说明书-车险承保功能需求20171123  date:2017-12-04 end
//                InsuredVO insuredVO = request.getRequestBody().getInsuredVO();// 被保险人信息
//                if (insuredVO != null) {
//                    String insuredNme = insuredVO.getcInsuredNme();// 被保险人名称
//                    if (insuredNme == null && "".equals(insuredNme)) {
//                        conserveVo.setInsured(vhlownerVO.getcOwnerNme());// 被保人名称：如果不传值的话会默认车主名称
//                        if (vhlownerVO.getcCertfCls() != null && "120001".equals(vhlownerVO.getcCertfCls())) { // 如果是被保险人是车主,并且证件号是身份证,就传身份证号
//                            conserveVo.setIdNumber(vhlownerVO.getcCertfCde());
//                        }
//                    } else {
//                        conserveVo.setInsured(insuredVO.getcInsuredNme());// 被保险人名称
//                    }
//                    // 根据证件类型判断是否是身份证
//                    String cCertfCls = insuredVO.getcCertfCls();// 被保人证件类型
//                    if (cCertfCls != null && "120001".equals(cCertfCls) && !"".equals(cCertfCls)) {
//                        String cCertfCde = insuredVO.getcCertfCde();// 被保险人身份证号
//                        if (IdcardValidator.verify(cCertfCde)) {
//                            conserveVo.setIdNumber(cCertfCde);
//                        }
//                    }
//                    //add by lizhenmin reason: AXBX-RM-需求规格说明书-车险承保功能需求20171123  date:2017-12-04 begin
//                    if (insuredVO.getcCertfCls() != null && ("100112".equals(insuredVO.getcCertfCls())//统一社会信用代码
//                            || "110001".equals(insuredVO.getcCertfCls())//组织机构代码
//                            || "100114".equals(insuredVO.getcCertfCls())//税务登记证
//                            || "100113".equals(insuredVO.getcCertfCls())//营业执照
//                            || "110002".equals(insuredVO.getcCertfCls())//工商注册号
//                    )) {// 被保险人类型
//                        conserveVo.setcInsuredCls("0");// 非自然人
//
//                    } else {
//                        conserveVo.setcInsuredCls("1");// 自然人
//
//                    }
//                    //add by lizhenmin reason: AXBX-RM-需求规格说明书-车险承保功能需求20171123  date:2017-12-04 end
//                }
//                logger.info(System.getProperty("line.separator")
//                        + "----------------------------------------交强险规则请求数据----------------------------------------"
//                        + System.getProperty("line.separator") + CommonUtil.dto2xml(conserveVo)
//                        + System.getProperty("line.separator")
//                        + "----------------------------------------交强险规则请求数据----------------------------------------"
//                        + System.getProperty("line.separator"));
//
//            } catch (BusinessException e) {
//                throw e;
//            } catch (Exception e) {
//                e.printStackTrace();
//            }
//
//        }
//        return conserveVo;
//
 //   }
}
